forked from a64f7bb4-7358-4778-9fbe-3b882c34cc1d/v1
32 lines
846 B
PHP
32 lines
846 B
PHP
<?php
|
|
|
|
namespace Drupal\KernelTests;
|
|
|
|
/**
|
|
* A trait used in testing for providing a list of modules in a dataProvider.
|
|
*/
|
|
trait FileSystemModuleDiscoveryDataProviderTrait {
|
|
|
|
/**
|
|
* A data provider that lists every module in core.
|
|
*
|
|
* @return array
|
|
* An array of module names to test.
|
|
*/
|
|
public function coreModuleListDataProvider() {
|
|
$prefix = dirname(__DIR__, 3) . DIRECTORY_SEPARATOR . 'modules';
|
|
$module_dirs = array_keys(iterator_to_array(new \FilesystemIterator($prefix)));
|
|
$module_names = array_map(function ($path) use ($prefix) {
|
|
return str_replace($prefix . DIRECTORY_SEPARATOR, '', $path);
|
|
}, $module_dirs);
|
|
$modules_keyed = array_combine($module_names, $module_names);
|
|
|
|
$data = array_map(function ($module) {
|
|
return [$module];
|
|
}, $modules_keyed);
|
|
|
|
return $data;
|
|
}
|
|
|
|
}
|