annotate core/tests/Drupal/KernelTests/FileSystemModuleDiscoveryDataProviderTrait.php @ 19:fa3358dc1485 tip

Add ndrum files
author Chris Cannam
date Wed, 28 Aug 2019 13:14:47 +0100
parents 4c8ae668cc8c
children
rev   line source
Chris@0 1 <?php
Chris@0 2
Chris@0 3 namespace Drupal\KernelTests;
Chris@0 4
Chris@0 5 /**
Chris@0 6 * A trait used in testing for providing a list of modules in a dataProvider.
Chris@0 7 */
Chris@0 8 trait FileSystemModuleDiscoveryDataProviderTrait {
Chris@0 9
Chris@0 10 /**
Chris@0 11 * A data provider that lists every module in core.
Chris@0 12 *
Chris@0 13 * @return array
Chris@0 14 * An array of module names to test.
Chris@0 15 */
Chris@0 16 public function coreModuleListDataProvider() {
Chris@0 17 $module_dirs = array_keys(iterator_to_array(new \FilesystemIterator(__DIR__ . '/../../../modules/')));
Chris@0 18 $module_names = array_map(function ($path) {
Chris@0 19 return str_replace(__DIR__ . '/../../../modules/', '', $path);
Chris@0 20 }, $module_dirs);
Chris@0 21 $modules_keyed = array_combine($module_names, $module_names);
Chris@0 22
Chris@0 23 $data = array_map(function ($module) {
Chris@0 24 return [$module];
Chris@0 25 }, $modules_keyed);
Chris@0 26
Chris@0 27 return $data;
Chris@0 28 }
Chris@0 29
Chris@0 30 }