TokenReplaceWebTest.php
Same filename in other branches
Namespace
Drupal\Tests\system\Functional\SystemFile
-
core/
modules/ system/ tests/ src/ Functional/ System/ TokenReplaceWebTest.php
View source
<?php
declare (strict_types=1);
namespace Drupal\Tests\system\Functional\System;
use Drupal\Core\EventSubscriber\MainContentViewSubscriber;
use Drupal\Tests\BrowserTestBase;
use Drupal\Tests\system\Functional\Cache\AssertPageCacheContextsAndTagsTrait;
/**
* Tests the token system integration.
*
* @group system
*/
class TokenReplaceWebTest extends BrowserTestBase {
use AssertPageCacheContextsAndTagsTrait;
/**
* {@inheritdoc}
*/
protected static $modules = [
'token_test',
'filter',
'node',
];
/**
* {@inheritdoc}
*/
protected $defaultTheme = 'stark';
/**
* Tests a token replacement on an actual website.
*/
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',
]);
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
TokenReplaceWebTest | Tests the token system integration. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.