You are here

public function AjaxBasePageNegotiatorTest::testDetermineActiveThemeDefaultTheme in Drupal 9

Same name and namespace in other branches
  1. 8 core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php \Drupal\Tests\Core\Theme\AjaxBasePageNegotiatorTest::testDetermineActiveThemeDefaultTheme()

@covers ::determineActiveTheme

File

core/tests/Drupal/Tests/Core/Theme/AjaxBasePageNegotiatorTest.php, line 111

Class

AjaxBasePageNegotiatorTest
@coversDefaultClass \Drupal\Core\Theme\AjaxBasePageNegotiator @group Theme

Namespace

Drupal\Tests\Core\Theme

Code

public function testDetermineActiveThemeDefaultTheme() {
  $theme = 'bartik';

  // When the theme is the system default, an empty string is provided as the
  // theme token. See system_js_settings_alter().
  $theme_token = '';
  $request = new Request([], [
    'ajax_page_state' => [
      'theme' => $theme,
      'theme_token' => $theme_token,
    ],
  ]);
  $this->requestStack
    ->push($request);
  $route_match = RouteMatch::createFromRequest($request);
  $this->tokenGenerator
    ->validate(Argument::cetera())
    ->shouldNotBeCalled();
  $result = $this->negotiator
    ->determineActiveTheme($route_match);
  $this
    ->assertSame($theme, $result);
}