TokenReplaceWebTest.php in Drupal 9
File
core/modules/system/tests/src/Functional/System/TokenReplaceWebTest.php
View source
<?php
namespace Drupal\Tests\system\Functional\System;
use Drupal\Core\EventSubscriber\MainContentViewSubscriber;
use Drupal\Tests\BrowserTestBase;
use Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait;
class TokenReplaceWebTest extends BrowserTestBase {
use AssertPageCacheContextsAndTagsTrait;
protected static $modules = [
'token_test',
'filter',
'node',
];
protected $defaultTheme = 'stark';
public function testTokens() {
$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',
]);
}
}