5fd25fe1caa3b23b03fe60b8996f3e3214906a0f
[yaffs-website] / web / modules / contrib / eu_cookie_compliance / src / Tests / Update / EuCookieComplianceUpdateTest.php
1 <?php
2
3 namespace Drupal\eu_cookie_compliance\Tests\Update;
4
5 use Drupal\system\Tests\Update\UpdatePathTestBase;
6 use Drupal\user\Entity\Role;
7
8 /**
9  * Tests the upgrade path for eu Cookie Compliance permission keys.
10  *
11  * @see https://www.drupal.org/node/2774143
12  *
13  * @group eu_cookie_compliance
14  */
15 class EuCookieComplianceUpdateTest extends UpdatePathTestBase {
16
17   /**
18    * {@inheritdoc}
19    */
20   protected static $modules = ['eu_cookie_compliance'];
21
22   /**
23    * {@inheritdoc}
24    */
25   protected function setDatabaseDumpFiles() {
26     $this->databaseDumpFiles = [
27       __DIR__ . '/../../../tests/fixtures/update/drupal-8.eu-cookie-compliance-beta5.standard.php.gz',
28       __DIR__ . '/../../../tests/fixtures/update/drupal-8.user-role-manager-2774143.php',
29     ];
30   }
31
32   /**
33    * Tests Eu Cookie Compliance permission keys updates.
34    *
35    * @see eu_cookie_compliance_post_update_permission_keys_to_lowercase()
36    */
37   public function testPostUpdatePermissionKeys() {
38     // Login using root user.
39     $this->drupalLogin($this->rootUser);
40     $this->drupalGet('admin/people/permissions');
41
42     // Tests to ensure that before updates the permission keys are in camelcase.
43     /** @var \Drupal\user\RoleInterface $testfor2774143 */
44     $testfor2774143 = Role::load('testfor2774143');
45     $this->assertTrue($testfor2774143->hasPermission('administer EU Cookie Compliance popup'));
46     $this->assertFalse($testfor2774143->hasPermission('administer eu cookie compliance popup'));
47     /** @var \Drupal\user\RoleInterface $secondtestfor2774143 */
48     $secondtestfor2774143 = Role::load('secondtestfor2774143');
49     $this->assertTrue($secondtestfor2774143->hasPermission('display EU Cookie Compliance popup'));
50     $this->assertFalse($secondtestfor2774143->hasPermission('display eu cookie compliance popup'));
51
52     $this->runUpdates();
53
54     $this->drupalGet('admin/people/permissions');
55
56     // Tests to ensure that after updates the permission keys are in lowercase.
57     /** @var \Drupal\user\RoleInterface $testfor2774143 */
58     $testfor2774143 = Role::load('testfor2774143');
59     $this->assertFalse($testfor2774143->hasPermission('administer EU Cookie Compliance popup'));
60     $this->assertTrue($testfor2774143->hasPermission('administer eu cookie compliance popup'));
61     /** @var \Drupal\user\RoleInterface $secondtestfor2774143 */
62     $secondtestfor2774143 = Role::load('secondtestfor2774143');
63     $this->assertFalse($secondtestfor2774143->hasPermission('display EU Cookie Compliance popup'));
64     $this->assertTrue($secondtestfor2774143->hasPermission('display eu cookie compliance popup'));
65   }
66
67 }