You are here

public function ServiceProviderTest::testServiceProviderRegistrationDynamic in Drupal 8

Same name and namespace in other branches
  1. 9 core/tests/Drupal/KernelTests/Core/ServiceProvider/ServiceProviderTest.php \Drupal\KernelTests\Core\ServiceProvider\ServiceProviderTest::testServiceProviderRegistrationDynamic()
  2. 10 core/tests/Drupal/KernelTests/Core/ServiceProvider/ServiceProviderTest.php \Drupal\KernelTests\Core\ServiceProvider\ServiceProviderTest::testServiceProviderRegistrationDynamic()

Tests that the DIC keeps up with module enable/disable in the same request.

File

core/tests/Drupal/KernelTests/Core/ServiceProvider/ServiceProviderTest.php, line 33

Class

ServiceProviderTest
Tests service provider registration to the DIC.

Namespace

Drupal\KernelTests\Core\ServiceProvider

Code

public function testServiceProviderRegistrationDynamic() {

  // Uninstall the module and ensure the service provider's service is not registered.
  \Drupal::service('module_installer')
    ->uninstall([
    'service_provider_test',
  ]);
  $this
    ->assertFalse(\Drupal::hasService('service_provider_test_class'), 'The service_provider_test_class service does not exist in the DIC.');

  // Install the module and ensure the service provider's service is registered.
  \Drupal::service('module_installer')
    ->install([
    'service_provider_test',
  ]);
  $this
    ->assertTrue(\Drupal::hasService('service_provider_test_class'), 'The service_provider_test_class service exists in the DIC.');
}