Mercurial > hg > isophonics-drupal-site
annotate core/modules/node/tests/src/Functional/NodeTemplateSuggestionsTest.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
rev | line source |
---|---|
Chris@0 | 1 <?php |
Chris@0 | 2 |
Chris@0 | 3 namespace Drupal\Tests\node\Functional; |
Chris@0 | 4 |
Chris@0 | 5 /** |
Chris@0 | 6 * Tests node template suggestions. |
Chris@0 | 7 * |
Chris@0 | 8 * @group node |
Chris@0 | 9 */ |
Chris@0 | 10 class NodeTemplateSuggestionsTest extends NodeTestBase { |
Chris@0 | 11 |
Chris@0 | 12 /** |
Chris@0 | 13 * Tests if template_preprocess_node() generates the correct suggestions. |
Chris@0 | 14 */ |
Chris@0 | 15 public function testNodeThemeHookSuggestions() { |
Chris@0 | 16 // Create node to be rendered. |
Chris@0 | 17 $node = $this->drupalCreateNode(); |
Chris@0 | 18 $view_mode = 'full'; |
Chris@0 | 19 |
Chris@0 | 20 // Simulate theming of the node. |
Chris@0 | 21 $build = \Drupal::entityManager()->getViewBuilder('node')->view($node, $view_mode); |
Chris@0 | 22 |
Chris@0 | 23 $variables['elements'] = $build; |
Chris@0 | 24 $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', [$variables]); |
Chris@0 | 25 |
Chris@0 | 26 $this->assertEqual($suggestions, ['node__full', 'node__page', 'node__page__full', 'node__' . $node->id(), 'node__' . $node->id() . '__full'], 'Found expected node suggestions.'); |
Chris@0 | 27 |
Chris@0 | 28 // Change the view mode. |
Chris@0 | 29 $view_mode = 'node.my_custom_view_mode'; |
Chris@0 | 30 $build = \Drupal::entityManager()->getViewBuilder('node')->view($node, $view_mode); |
Chris@0 | 31 |
Chris@0 | 32 $variables['elements'] = $build; |
Chris@0 | 33 $suggestions = \Drupal::moduleHandler()->invokeAll('theme_suggestions_node', [$variables]); |
Chris@0 | 34 |
Chris@0 | 35 $this->assertEqual($suggestions, ['node__node_my_custom_view_mode', 'node__page', 'node__page__node_my_custom_view_mode', 'node__' . $node->id(), 'node__' . $node->id() . '__node_my_custom_view_mode'], 'Found expected node suggestions.'); |
Chris@0 | 36 } |
Chris@0 | 37 |
Chris@0 | 38 } |