Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 4.1.x will end 13 November 2023 (12 months).
  • Bug fixes for security issues in 4.1.x will end 10 November 2025 (36 months).
  • PHP version: minimum PHP 7.4.0 Note: minimum PHP version has increased since Moodle 4.0. PHP 8.0.x is supported too.

Differences Between: [Versions 310 and 401] [Versions 311 and 401] [Versions 39 and 401]

   1  <?php
   2  // This file is part of Moodle - http://moodle.org/
   3  //
   4  // Moodle is free software: you can redistribute it and/or modify
   5  // it under the terms of the GNU General Public License as published by
   6  // the Free Software Foundation, either version 3 of the License, or
   7  // (at your option) any later version.
   8  //
   9  // Moodle is distributed in the hope that it will be useful,
  10  // but WITHOUT ANY WARRANTY; without even the implied warranty of
  11  // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12  // GNU General Public License for more details.
  13  //
  14  // You should have received a copy of the GNU General Public License
  15  // along with Moodle.  If not, see <http://www.gnu.org/licenses/>.
  16  
  17  defined('MOODLE_INTERNAL') || die();
  18  
  19  /**
  20   * Coverage information for the core subsystem.
  21   *
  22   * @package    core
  23   * @category   phpunit
  24   * @copyright  2018 Andrew Nicols <andrew@nicols.co.uk>
  25   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  26   */
  27  
  28  /**
  29   * Coverage information for the core subsystem.
  30   *
  31   * @copyright  2018 Andrew Nicols <andrew@nicols.co.uk>
  32   * @license    http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
  33   */
  34  return new class extends phpunit_coverage_info {
  35      /** @var array The list of folders relative to the plugin root to include in coverage generation. */
  36      protected $includelistfolders = [
  37          // This is a legacy hangup which relates to parts of the file storage API being placed in the wrong location.
  38          'filestorage',
  39      ];
  40  
  41      /** @var array The list of files relative to the plugin root to include in coverage generation. */
  42      protected $includelistfiles = [
  43          'accesslib.php',
  44          'adminlib.php',
  45          'authlib.php',
  46          'badgeslib.php',
  47          'blocklib.php',
  48          'boxlib.php',
  49          'clilib.php',
  50          'completionlib.php',
  51          'conditionlib.php',
  52          'configonlylib.php',
  53          'cronlib.php',
  54          'csslib.php',
  55          'customcheckslib.php',
  56          'dataformatlib.php',
  57          'datalib.php',
  58          'ddllib.php',
  59          'deprecatedlib.php',
  60          'dmllib.php',
  61          'dtllib.php',
  62          'editorlib.php',
  63          'enrollib.php',
  64          'environmentlib.php',
  65          'externallib.php',
  66          'filelib.php',
  67          'filterlib.php',
  68          'flickrlib.php',
  69          'formslib.php',
  70          'gdlib.php',
  71          'gradelib.php',
  72          'graphlib.php',
  73          'grouplib.php',
  74          'installlib.php',
  75          'jslib.php',
  76          'ldaplib.php',
  77          'licenselib.php',
  78          'listlib.php',
  79          'mathslib.php',
  80          'messagelib.php',
  81          'modinfolib.php',
  82          'moodlelib.php',
  83          'myprofilelib.php',
  84          'navigationlib.php',
  85          'oauthlib.php',
  86          'outputactions.php',
  87          'outputcomponents.php',
  88          'outputfactories.php',
  89          'outputfragmentrequirementslib.php',
  90          'outputlib.php',
  91          'outputrenderers.php',
  92          'outputrequirementslib.php',
  93          'pagelib.php',
  94          'pdflib.php',
  95          'phpminimumversionlib.php',
  96          'plagiarismlib.php',
  97          'portfoliolib.php',
  98          'questionlib.php',
  99          'resourcelib.php',
 100          'rsslib.php',
 101          'searchlib.php',
 102          'sessionlib.php',
 103          'setuplib.php',
 104          'soaplib.php',
 105          'statslib.php',
 106          'tablelib.php',
 107          'tokeniserlib.php',
 108          'upgradelib.php',
 109          'uploadlib.php',
 110          'webdavlib.php',
 111          'weblib.php',
 112          'xsendfilelib.php',
 113      ];
 114  
 115      /** @var array The list of folders relative to the plugin root to exclude from coverage generation. */
 116      protected $excludelistfolders = [
 117          'filestorage/tests',
 118      ];
 119  };