mirror of
https://github.com/moodle/moodle.git
synced 2025-08-06 09:26:35 +02:00
MDL-52721 unittest: Exclude tests in vendor and node_modules
This commit is contained in:
parent
e8d5100212
commit
60237c2ce2
1 changed files with 23 additions and 8 deletions
|
@ -125,15 +125,30 @@ class tests_finder {
|
||||||
private static function get_all_directories_with_tests($testtype) {
|
private static function get_all_directories_with_tests($testtype) {
|
||||||
global $CFG;
|
global $CFG;
|
||||||
|
|
||||||
|
// List of directories to exclude from test file searching.
|
||||||
|
$excludedir = array('node_modules', 'vendor');
|
||||||
|
|
||||||
|
// Get first level directories in which tests should be searched.
|
||||||
|
$directoriestosearch = array();
|
||||||
|
$alldirs = glob($CFG->dirroot . DIRECTORY_SEPARATOR . '*' , GLOB_ONLYDIR);
|
||||||
|
foreach ($alldirs as $dir) {
|
||||||
|
if (!in_array(basename($dir), $excludedir)) {
|
||||||
|
$directoriestosearch[] = $dir;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Search for tests in valid directories.
|
||||||
$dirs = array();
|
$dirs = array();
|
||||||
$dirite = new RecursiveDirectoryIterator($CFG->dirroot);
|
foreach ($directoriestosearch as $dir) {
|
||||||
$iteite = new RecursiveIteratorIterator($dirite);
|
$dirite = new RecursiveDirectoryIterator($dir);
|
||||||
$regexp = self::get_regexp($testtype);
|
$iteite = new RecursiveIteratorIterator($dirite);
|
||||||
$regite = new RegexIterator($iteite, $regexp);
|
$regexp = self::get_regexp($testtype);
|
||||||
foreach ($regite as $path => $element) {
|
$regite = new RegexIterator($iteite, $regexp);
|
||||||
$key = dirname(dirname($path));
|
foreach ($regite as $path => $element) {
|
||||||
$value = trim(str_replace('/', '_', str_replace($CFG->dirroot, '', $key)), '_');
|
$key = dirname(dirname($path));
|
||||||
$dirs[$key] = $value;
|
$value = trim(str_replace(DIRECTORY_SEPARATOR, '_', str_replace($CFG->dirroot, '', $key)), '_');
|
||||||
|
$dirs[$key] = $value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
ksort($dirs);
|
ksort($dirs);
|
||||||
return array_flip($dirs);
|
return array_flip($dirs);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue