TestController.php
Same filename in this branch
- 9 core/modules/views/tests/modules/views_test_modal/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/httpkernel_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/container_rebuild_test/src/TestController.php
- 9 core/modules/system/tests/modules/conneg_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/dialog_renderer_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/off_canvas_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/csrf_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/js_webassert_test/src/Controller/TestController.php
- 9 core/modules/system/tests/modules/csrf_race_test/src/Controller/TestController.php
- 9 core/modules/contextual/tests/modules/contextual_test/src/Controller/TestController.php
- 9 core/tests/Drupal/Tests/Core/Controller/TestController.php
Same filename in other branches
- 8.9.x core/modules/views/tests/modules/views_test_modal/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/httpkernel_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/token_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/conneg_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/dialog_renderer_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/off_canvas_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/csrf_test/src/Controller/TestController.php
- 8.9.x core/modules/system/tests/modules/csrf_race_test/src/Controller/TestController.php
- 8.9.x core/modules/contextual/tests/modules/contextual_test/src/Controller/TestController.php
- 8.9.x core/tests/Drupal/Tests/Core/Controller/TestController.php
- 10 core/modules/views/tests/modules/views_test_modal/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/token_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/container_rebuild_test/src/TestController.php
- 10 core/modules/system/tests/modules/path_changed_helper_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/content_negotiation_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/dialog_renderer_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/off_canvas_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/csrf_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/js_webassert_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/csrf_race_test/src/Controller/TestController.php
- 10 core/modules/system/tests/modules/http_kernel_test/src/Controller/TestController.php
- 10 core/modules/contextual/tests/modules/contextual_test/src/Controller/TestController.php
- 10 core/tests/Drupal/Tests/Core/Controller/TestController.php
- 11.x core/modules/views/tests/modules/views_test_modal/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/token_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/container_rebuild_test/src/TestController.php
- 11.x core/modules/system/tests/modules/path_changed_helper_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/content_negotiation_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/dialog_renderer_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/off_canvas_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/csrf_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/js_webassert_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/csrf_race_test/src/Controller/TestController.php
- 11.x core/modules/system/tests/modules/http_kernel_test/src/Controller/TestController.php
- 11.x core/modules/contextual/tests/modules/contextual_test/src/Controller/TestController.php
- 11.x core/tests/Drupal/Tests/Core/Controller/TestController.php
- 11.x core/modules/system/tests/modules/jswebassert_test/src/Controller/TestController.php
- 11.x core/modules/package_manager/tests/modules/package_manager_test_release_history/src/TestController.php
Namespace
Drupal\token_test\ControllerFile
-
core/
modules/ system/ tests/ modules/ token_test/ src/ Controller/ TestController.php
View source
<?php
namespace Drupal\token_test\Controller;
use Drupal\Core\Controller\ControllerBase;
use Drupal\Core\Render\BubbleableMetadata;
use Drupal\Core\Utility\Token;
use Drupal\node\NodeInterface;
use Symfony\Component\DependencyInjection\ContainerInterface;
/**
* Provides a test controller for token replacement.
*/
class TestController extends ControllerBase {
/**
* The token replacement system.
*
* @var \Drupal\Core\Utility\Token
*/
protected $token;
/**
* Constructs a new TestController instance.
*
* @param \Drupal\Core\Utility\Token $token
* The token replacement system.
*/
public function __construct(Token $token) {
$this->token = $token;
}
/**
* {@inheritdoc}
*/
public static function create(ContainerInterface $container) {
return new static($container->get('token'));
}
/**
* Provides a token replacement with a node as well as the current user.
*
* This controller passes an explicit bubbleable metadata object to
* $this->token->replace(), and applies the collected metadata to the render
* array being built.
*
* @param \Drupal\node\NodeInterface $node
* The node.
*
* @return array
* The render array.
*/
public function tokenReplace(NodeInterface $node) {
$bubbleable_metadata = new BubbleableMetadata();
$build['#markup'] = $this->token
->replace('Tokens: [node:nid] [current-user:uid]', [
'node' => $node,
], [], $bubbleable_metadata);
$bubbleable_metadata->applyTo($build);
return $build;
}
/**
* Provides a token replacement with a node as well as the current user.
*
* This controller is for testing the token service's fallback behavior of
* applying collected metadata to the currently active render context when an
* explicit bubbleable metadata object isn't passed in.
*
* @param \Drupal\node\NodeInterface $node
* The node.
*
* @return array
* The render array.
*/
public function tokenReplaceWithoutPassedBubbleableMetadata(NodeInterface $node) {
$build['#markup'] = $this->token
->replace('Tokens: [node:nid] [current-user:uid]', [
'node' => $node,
], []);
return $build;
}
}
Classes
Title | Deprecated | Summary |
---|---|---|
TestController | Provides a test controller for token replacement. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.