function StackKernelIntegrationTest::testLazyLateMiddlewares

Same name in other branches
  1. 9 core/tests/Drupal/KernelTests/Core/HttpKernel/StackKernelIntegrationTest.php \Drupal\KernelTests\Core\HttpKernel\StackKernelIntegrationTest::testLazyLateMiddlewares()
  2. 10 core/tests/Drupal/KernelTests/Core/HttpKernel/StackKernelIntegrationTest.php \Drupal\KernelTests\Core\HttpKernel\StackKernelIntegrationTest::testLazyLateMiddlewares()
  3. 11.x core/tests/Drupal/KernelTests/Core/HttpKernel/StackKernelIntegrationTest.php \Drupal\KernelTests\Core\HttpKernel\StackKernelIntegrationTest::testLazyLateMiddlewares()

Tests that late middlewares are automatically flagged lazy.

File

core/tests/Drupal/KernelTests/Core/HttpKernel/StackKernelIntegrationTest.php, line 48

Class

StackKernelIntegrationTest
Tests the stacked kernel functionality.

Namespace

Drupal\KernelTests\Core\HttpKernel

Code

public function testLazyLateMiddlewares() {
    $this->assertFalse($this->container
        ->getDefinition('http_middleware.reverse_proxy')
        ->isLazy(), 'lazy flag on http_middleware.reverse_proxy definition is not set');
    $this->assertFalse($this->container
        ->getDefinition('http_middleware.kernel_pre_handle')
        ->isLazy(), 'lazy flag on http_middleware.kernel_pre_handle definition is not set');
    $this->assertFalse($this->container
        ->getDefinition('http_middleware.session')
        ->isLazy(), 'lazy flag on http_middleware.session definition is not set');
    $this->assertFalse($this->container
        ->getDefinition('http_kernel.basic')
        ->isLazy(), 'lazy flag on http_kernel.basic definition is not set');
    \Drupal::service('module_installer')->install([
        'page_cache',
    ]);
    $this->container = \Drupal::service('kernel')->rebuildContainer();
    $this->assertFalse($this->container
        ->getDefinition('http_middleware.reverse_proxy')
        ->isLazy(), 'lazy flag on http_middleware.reverse_proxy definition is not set');
    $this->assertFalse($this->container
        ->getDefinition('http_middleware.page_cache')
        ->isLazy(), 'lazy flag on http_middleware.page_cache definition is not set');
    $this->assertTrue($this->container
        ->getDefinition('http_middleware.kernel_pre_handle')
        ->isLazy(), 'lazy flag on http_middleware.kernel_pre_handle definition is automatically set if page_cache is enabled.');
    $this->assertTrue($this->container
        ->getDefinition('http_middleware.session')
        ->isLazy(), 'lazy flag on http_middleware.session definition is automatically set if page_cache is enabled.');
    $this->assertTrue($this->container
        ->getDefinition('http_kernel.basic')
        ->isLazy(), 'lazy flag on http_kernel.basic definition is automatically set if page_cache is enabled.');
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.