public function TestDiscovery::registerTestNamespaces in Zircon Profile 8.0
Same name and namespace in other branches
- 8 core/modules/simpletest/src/TestDiscovery.php \Drupal\simpletest\TestDiscovery::registerTestNamespaces()
Registers test namespaces of all available extensions.
Return value
array An associative array whose keys are PSR-4 namespace prefixes and whose values are directory names.
1 call to TestDiscovery::registerTestNamespaces()
- TestDiscovery::findAllClassFiles in core/
modules/ simpletest/ src/ TestDiscovery.php - Discovers all class files in all available extensions.
File
- core/
modules/ simpletest/ src/ TestDiscovery.php, line 74 - Contains \Drupal\simpletest\TestDiscovery.
Class
- TestDiscovery
- Discovers available tests.
Namespace
Drupal\simpletestCode
public function registerTestNamespaces() {
if (isset($this->testNamespaces)) {
return $this->testNamespaces;
}
$this->testNamespaces = array();
$existing = $this->classLoader
->getPrefixesPsr4();
// Add PHPUnit test namespaces of Drupal core.
$this->testNamespaces['Drupal\\Tests\\'] = [
DRUPAL_ROOT . '/core/tests/Drupal/Tests',
];
$this->testNamespaces['Drupal\\KernelTests\\'] = [
DRUPAL_ROOT . '/core/tests/Drupal/KernelTests',
];
$this->testNamespaces['Drupal\\FunctionalTests\\'] = [
DRUPAL_ROOT . '/core/tests/Drupal/FunctionalTests',
];
$this->availableExtensions = array();
foreach ($this
->getExtensions() as $name => $extension) {
$this->availableExtensions[$extension
->getType()][$name] = $name;
$base_path = DRUPAL_ROOT . '/' . $extension
->getPath();
// Add namespace of disabled/uninstalled extensions.
if (!isset($existing["Drupal\\{$name}\\"])) {
$this->classLoader
->addPsr4("Drupal\\{$name}\\", "{$base_path}/src");
}
// Add Simpletest test namespace.
$this->testNamespaces["Drupal\\{$name}\\Tests\\"][] = "{$base_path}/src/Tests";
// Add PHPUnit test namespaces.
$this->testNamespaces["Drupal\\Tests\\{$name}\\Unit\\"][] = "{$base_path}/tests/src/Unit";
$this->testNamespaces["Drupal\\Tests\\{$name}\\Kernel\\"][] = "{$base_path}/tests/src/Kernel";
$this->testNamespaces["Drupal\\Tests\\{$name}\\Functional\\"][] = "{$base_path}/tests/src/Functional";
}
foreach ($this->testNamespaces as $prefix => $paths) {
$this->classLoader
->addPsr4($prefix, $paths);
}
return $this->testNamespaces;
}