You are here

public function CookieUpdateTest::testCookieUpdates in Style Switcher 3.0.x

Same name and namespace in other branches
  1. 8.2 tests/src/Functional/CookieUpdateTest.php \Drupal\Tests\styleswitcher\Functional\CookieUpdateTest::testCookieUpdates()

Tests cookie updates.

@dataProvider providerCookieUpdates

Parameters

int $version: Version of a Style Switcher cookie to test.

string $cookie_name: Old cookie name.

File

tests/src/Functional/CookieUpdateTest.php, line 52

Class

CookieUpdateTest
Tests Style Switcher cookie updates.

Namespace

Drupal\Tests\styleswitcher\Functional

Code

public function testCookieUpdates(int $version, string $cookie_name) {
  $styles['custom/default'] = $this
    ->composeStyleMockingPath('Default');

  // Mock a theme style by saving it to the custom styles config.
  $styles['theme/active'] = $this
    ->composeStyleMockingPath('Active', 'theme');
  $this
    ->config('styleswitcher.custom_styles')
    ->set('styles', $styles)
    ->save();
  $settings = $this
    ->composeStylesSettings([
    'custom/default',
    'theme/active',
  ]);
  $settings['custom/default']['is_default'] = TRUE;
  $this
    ->config('styleswitcher.styles_settings')
    ->set("settings.{$this->defaultTheme}", $settings)
    ->save();
  $this
    ->assertActiveStylePath('custom/default');
  $this
    ->drupalGet('styleswitcher-test-legacy-cookies/' . $version);
  $this
    ->assertActiveStylePath('theme/active');
  $this
    ->assertSame('theme/active', $this
    ->getSession()
    ->getCookie("styleswitcher[{$this->defaultTheme}]"));
  $this
    ->assertNull($this
    ->getSession()
    ->getCookie($cookie_name));
}