class TestKernel
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Test/TestKernel.php \Drupal\Core\Test\TestKernel
- 10 core/lib/Drupal/Core/Test/TestKernel.php \Drupal\Core\Test\TestKernel
- 11.x core/lib/Drupal/Core/Test/TestKernel.php \Drupal\Core\Test\TestKernel
Kernel to mock requests to test simpletest.
Hierarchy
- class \Drupal\Core\DrupalKernel implements \Drupal\Core\DrupalKernelInterface, \Symfony\Component\HttpKernel\TerminableInterface uses \Drupal\Core\Installer\InstallerRedirectTrait
- class \Drupal\Core\Test\TestKernel extends \Drupal\Core\DrupalKernel
Expanded class hierarchy of TestKernel
7 files declare their use of TestKernel
- ConfigEntityBaseUnitTest.php in core/
tests/ Drupal/ Tests/ Core/ Config/ Entity/ ConfigEntityBaseUnitTest.php - Contains \Drupal\Tests\Core\Config\Entity\ConfigEntityBaseUnitTest.
- ContextHandlerTest.php in core/
tests/ Drupal/ Tests/ Core/ Plugin/ ContextHandlerTest.php - Contains \Drupal\Tests\Core\Plugin\ContextHandlerTest.
- DependencySerializationTest.php in core/
tests/ Drupal/ Tests/ Core/ DependencyInjection/ DependencySerializationTest.php - Contains \Drupal\Tests\Core\DependencyInjection\DependencySerializationTest.
- DrupalKernelTest.php in core/
tests/ Drupal/ Tests/ Core/ DrupalKernel/ DrupalKernelTest.php - http.php in core/
modules/ system/ tests/ http.php - Fake an HTTP request, for use during testing.
File
-
core/
lib/ Drupal/ Core/ Test/ TestKernel.php, line 12
Namespace
Drupal\Core\TestView source
class TestKernel extends DrupalKernel {
/**
* {@inheritdoc}
*/
public function __construct($environment, $class_loader, $allow_dumping = TRUE) {
// Exit if we should be in a test environment but aren't.
if (!drupal_valid_test_ua()) {
header($_SERVER['SERVER_PROTOCOL'] . ' 403 Forbidden');
exit;
}
parent::__construct($environment, $class_loader, $allow_dumping);
}
/**
* Sets a container with a kernel service on the Drupal class.
*
* @return \Drupal\Component\DependencyInjection\ContainerInterface
* A container with the kernel service set.
*/
public static function setContainerWithKernel() {
$container = new ContainerBuilder();
$kernel = new DrupalKernel('test', NULL);
// Objects of the same type will have access to each others private and
// protected members even though they are not the same instances. This is
// because the implementation specific details are already known when
// inside those objects.
$kernel->container = $container;
$container->set('kernel', $kernel);
$container->set(ReverseContainer::class, new ReverseContainer($container));
\Drupal::setContainer($container);
return $container;
}
}
Members
Title Sort descending | Deprecated | Modifiers | Object type | Summary | Overriden Title | Overrides |
---|---|---|---|---|---|---|
DrupalKernel::$allowDumping | protected | property | Whether the container can be dumped. | |||
DrupalKernel::$booted | protected | property | Whether the kernel has been booted. | |||
DrupalKernel::$bootstrapContainer | protected | property | Holds the bootstrap container. | |||
DrupalKernel::$bootstrapContainerClass | protected | property | Holds the class used for instantiating the bootstrap container. | |||
DrupalKernel::$classLoader | protected | property | The class loader object. | |||
DrupalKernel::$configStorage | protected | property | Config storage object used for reading enabled modules configuration. | |||
DrupalKernel::$container | protected | property | Holds the container instance. | |||
DrupalKernel::$containerNeedsDumping | protected | property | Whether the container needs to be dumped once booting is complete. | |||
DrupalKernel::$containerNeedsRebuild | protected | property | Whether the container needs to be rebuilt the next time it is initialized. | |||
DrupalKernel::$defaultBootstrapContainerDefinition | protected | property | Holds the default bootstrap container definition. | |||
DrupalKernel::$environment | protected | property | The environment, e.g. 'testing', 'install'. | |||
DrupalKernel::$isEnvironmentInitialized | protected static | property | Whether the PHP environment has been initialized. | |||
DrupalKernel::$moduleData | protected | property | List of available modules and installation profiles. | |||
DrupalKernel::$moduleList | protected | property | Holds the list of enabled modules. | |||
DrupalKernel::$phpArrayDumperClass | protected | property | Holds the class used for dumping the container to a PHP array. | |||
DrupalKernel::$prepared | protected | property | Whether essential services have been set up properly by preHandle(). | |||
DrupalKernel::$root | protected | property | The app root. | |||
DrupalKernel::$serviceIdMapping | Deprecated | protected | property | A mapping from service classes to service IDs. | ||
DrupalKernel::$serviceProviderClasses | protected | property | List of discovered service provider class names or objects. | |||
DrupalKernel::$serviceProviders | protected | property | List of instantiated service provider classes. | |||
DrupalKernel::$serviceYamls | protected | property | List of discovered services.yml pathnames. | |||
DrupalKernel::$sitePath | protected | property | The site path directory. | |||
DrupalKernel::addServiceFiles | protected | function | Add service files. | |||
DrupalKernel::attachSynthetic | protected | function | Attach synthetic values on to kernel. | |||
DrupalKernel::boot | public | function | Boots the current kernel. | Overrides DrupalKernelInterface::boot | 1 | |
DrupalKernel::bootEnvironment | public static | function | Setup a consistent PHP environment. | |||
DrupalKernel::cacheDrupalContainer | protected | function | Stores the container definition in a cache. | 1 | ||
DrupalKernel::classLoaderAddMultiplePsr4 | protected | function | Registers a list of namespaces with PSR-4 directories for class loading. | |||
DrupalKernel::collectServiceIdMapping | Deprecated | protected | function | Collect a mapping between service to ids. | ||
DrupalKernel::compileContainer | protected | function | Compiles a new service container. | |||
DrupalKernel::createFromRequest | public static | function | Create a DrupalKernel object from a request. | 1 | ||
DrupalKernel::discoverServiceProviders | public | function | Discovers available serviceProviders. | Overrides DrupalKernelInterface::discoverServiceProviders | 2 | |
DrupalKernel::findSitePath | public static | function | Returns the appropriate site directory for a request. | |||
DrupalKernel::generateServiceIdHash | Deprecated | public static | function | Generate a unique hash for a service object. | ||
DrupalKernel::getAppRoot | public | function | Gets the app root. | Overrides DrupalKernelInterface::getAppRoot | ||
DrupalKernel::getCachedContainerDefinition | public | function | Returns the cached container definition - if any. | Overrides DrupalKernelInterface::getCachedContainerDefinition | ||
DrupalKernel::getConfigStorage | protected | function | Returns the active configuration storage to use during building the container. | 1 | ||
DrupalKernel::getContainer | public | function | Gets the current container. | Overrides DrupalKernelInterface::getContainer | ||
DrupalKernel::getContainerBuilder | protected | function | Gets a new ContainerBuilder instance used to build the service container. | |||
DrupalKernel::getContainerCacheKey | protected | function | Returns the container cache key based on the environment. | |||
DrupalKernel::getHttpKernel | protected | function | Gets a http kernel from the container. | |||
DrupalKernel::getInstallProfile | protected | function | Gets the active install profile. | 1 | ||
DrupalKernel::getKernelParameters | protected | function | Returns the kernel parameters. | |||
DrupalKernel::getModuleFileNames | protected | function | Gets the file name for each enabled module. | |||
DrupalKernel::getModuleNamespacesPsr4 | protected | function | Gets the PSR-4 base directories for module namespaces. | |||
DrupalKernel::getModulesParameter | protected | function | Returns an array of Extension class parameters for all enabled modules. | |||
DrupalKernel::getServiceIdMapping | public | function | Get a mapping from service hashes to service IDs. | Overrides DrupalKernelInterface::getServiceIdMapping | ||
DrupalKernel::getServiceProviders | public | function | Returns all registered service providers. | Overrides DrupalKernelInterface::getServiceProviders | ||
DrupalKernel::getServicesToPersist | protected | function | Returns service instances to persist from an old container to a new one. | |||
DrupalKernel::getSitePath | public | function | Gets the site path directory. | Overrides DrupalKernelInterface::getSitePath | ||
DrupalKernel::guessApplicationRoot | protected static | function | Determine the application root directory based on this file's location. | |||
DrupalKernel::handle | public | function | 1 | |||
DrupalKernel::handleException | protected | function | Converts an exception into a response. | |||
DrupalKernel::initializeContainer | protected | function | Initializes the service container. | 2 | ||
DrupalKernel::initializeRequestGlobals | protected | function | Bootstraps the legacy global request variables. | |||
DrupalKernel::initializeServiceProviders | protected | function | Registers all service providers to the kernel. | |||
DrupalKernel::initializeSettings | protected | function | Locate site path and initialize settings singleton. | |||
DrupalKernel::invalidateContainer | public | function | Invalidate the service container for the next request. | Overrides DrupalKernelInterface::invalidateContainer | ||
DrupalKernel::loadLegacyIncludes | public | function | Helper method that loads legacy Drupal include files. | Overrides DrupalKernelInterface::loadLegacyIncludes | ||
DrupalKernel::moduleData | protected | function | Returns module data on the filesystem. | |||
DrupalKernel::persistServices | protected | function | Moves persistent service instances into a new container. | |||
DrupalKernel::preHandle | public | function | Helper method that does request related initialization. | Overrides DrupalKernelInterface::preHandle | ||
DrupalKernel::rebuildContainer | public | function | Force a container rebuild. | Overrides DrupalKernelInterface::rebuildContainer | ||
DrupalKernel::setContainer | public | function | ||||
DrupalKernel::setSitePath | public | function | Set the current site path directory. | Overrides DrupalKernelInterface::setSitePath | ||
DrupalKernel::setupTrustedHosts | protected static | function | Sets up the lists of trusted HTTP Host headers. | |||
DrupalKernel::shutdown | public | function | Shuts down the kernel. | Overrides DrupalKernelInterface::shutdown | ||
DrupalKernel::terminate | public | function | ||||
DrupalKernel::updateModules | public | function | Implements Drupal\Core\DrupalKernelInterface::updateModules(). | Overrides DrupalKernelInterface::updateModules | ||
DrupalKernel::validateHostname | public static | function | Validates the hostname supplied from the HTTP request. | |||
DrupalKernel::validateHostnameLength | protected static | function | Validates a hostname length. | |||
DrupalKernelInterface::CONTAINER_INITIALIZE_SUBREQUEST_FINISHED | constant | Event fired when the service container finished initializing in subrequest. | ||||
InstallerRedirectTrait::isCli | protected | function | Returns whether the current PHP process runs on CLI. | |||
InstallerRedirectTrait::shouldRedirectToInstaller | protected | function | Determines if an exception handler should redirect to the installer. | |||
TestKernel::setContainerWithKernel | public static | function | Sets a container with a kernel service on the Drupal class. | |||
TestKernel::__construct | public | function | Constructs a DrupalKernel object. | Overrides DrupalKernel::__construct |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.