function TokenReplaceWebTest::testTokens

Same name and namespace in other branches
  1. 9 core/modules/system/tests/src/Functional/System/TokenReplaceWebTest.php \Drupal\Tests\system\Functional\System\TokenReplaceWebTest::testTokens()
  2. 8.9.x core/modules/system/tests/src/Functional/System/TokenReplaceWebTest.php \Drupal\Tests\system\Functional\System\TokenReplaceWebTest::testTokens()
  3. 11.x core/modules/system/tests/src/Functional/System/TokenReplaceWebTest.php \Drupal\Tests\system\Functional\System\TokenReplaceWebTest::testTokens()

Tests a token replacement on an actual website.

File

core/modules/system/tests/src/Functional/System/TokenReplaceWebTest.php, line 33

Class

TokenReplaceWebTest
Tests the token system integration.

Namespace

Drupal\Tests\system\Functional\System

Code

public function testTokens() : void {
  $node = $this->drupalCreateNode();
  $account = $this->drupalCreateUser();
  $this->drupalLogin($account);
  $this->drupalGet('token-test/' . $node->id());
  $this->assertSession()
    ->pageTextContains("Tokens: {$node->id()} {$account->id()}");
  $this->assertCacheTags([
    'node:1',
    'rendered',
    'user:2',
  ]);
  $this->assertCacheContexts([
    'languages:language_interface',
    'theme',
    'url.query_args:' . MainContentViewSubscriber::WRAPPER_FORMAT,
    'user',
  ]);
  $this->drupalGet('token-test-without-bubbleable-metadata/' . $node->id());
  $this->assertSession()
    ->pageTextContains("Tokens: {$node->id()} {$account->id()}");
  $this->assertCacheTags([
    'node:1',
    'rendered',
    'user:2',
  ]);
  $this->assertCacheContexts([
    'languages:language_interface',
    'theme',
    'url.query_args:' . MainContentViewSubscriber::WRAPPER_FORMAT,
    'user',
  ]);
}

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