Backup of db before drupal security update
[yaffs-website] / web / core / modules / system / tests / src / Functional / DrupalKernel / ContainerRebuildWebTest.php
1 <?php
2
3 namespace Drupal\Tests\system\Functional\DrupalKernel;
4
5 use Drupal\Tests\BrowserTestBase;
6
7 /**
8  * Ensures that the container rebuild works as expected.
9  *
10  * @group DrupalKernel
11  */
12 class ContainerRebuildWebTest extends BrowserTestBase {
13
14   /**
15    * {@inheritdoc}
16    */
17   public static $modules = ['service_provider_test'];
18
19   /**
20    * Sets a different deployment identifier.
21    */
22   public function testSetContainerRebuildWithDifferentDeploymentIdentifier() {
23     $assert = $this->assertSession();
24
25     // Ensure the parameter is not set.
26     $this->drupalGet('<front>');
27     $assert->responseHeaderEquals('container_rebuild_indicator', NULL);
28
29     $this->writeSettings(['settings' => ['deployment_identifier' => (object) ['value' => 'new-identifier', 'required' => TRUE]]]);
30
31     $this->drupalGet('<front>');
32
33     $assert->responseHeaderEquals('container_rebuild_indicator', 'new-identifier');
34   }
35
36   /**
37    * Tests container invalidation.
38    */
39   public function testContainerInvalidation() {
40     $assert = $this->assertSession();
41
42     // Ensure that parameter is not set.
43     $this->drupalGet('<front>');
44     $assert->responseHeaderEquals('container_rebuild_test_parameter', NULL);
45
46     // Ensure that after setting the parameter, without a container rebuild the
47     // parameter is still not set.
48     $this->writeSettings(['settings' => ['container_rebuild_test_parameter' => (object) ['value' => 'rebuild_me_please', 'required' => TRUE]]]);
49
50     $this->drupalGet('<front>');
51     $assert->responseHeaderEquals('container_rebuild_test_parameter', NULL);
52
53     // Ensure that after container invalidation the parameter is set.
54     \Drupal::service('kernel')->invalidateContainer();
55     $this->drupalGet('<front>');
56     $assert->responseHeaderEquals('container_rebuild_test_parameter', 'rebuild_me_please');
57   }
58
59 }