function FieldPluginBaseTest::testGetRenderTokensWithArguments

Same name and namespace in other branches
  1. 9 core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php \Drupal\Tests\views\Unit\Plugin\field\FieldPluginBaseTest::testGetRenderTokensWithArguments()
  2. 8.9.x core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php \Drupal\Tests\views\Unit\Plugin\field\FieldPluginBaseTest::testGetRenderTokensWithArguments()
  3. 11.x core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php \Drupal\Tests\views\Unit\Plugin\field\FieldPluginBaseTest::testGetRenderTokensWithArguments()

@covers ::getRenderTokens

File

core/modules/views/tests/src/Unit/Plugin/field/FieldPluginBaseTest.php, line 688

Class

FieldPluginBaseTest
@coversDefaultClass \Drupal\views\Plugin\views\field\FieldPluginBase[[api-linebreak]] @group views

Namespace

Drupal\Tests\views\Unit\Plugin\field

Code

public function testGetRenderTokensWithArguments() : void {
  $field = $this->setupTestField([
    'id' => 'id',
  ]);
  $field->view->args = [
    'argument value',
  ];
  $field->view->build_info['substitutions']['{{ arguments.name }}'] = 'argument value';
  $argument = $this->getMockBuilder('\\Drupal\\views\\Plugin\\views\\argument\\ArgumentPluginBase')
    ->disableOriginalConstructor()
    ->getMock();
  $field->last_render = 'last rendered output';
  $this->display
    ->expects($this->any())
    ->method('getHandlers')
    ->willReturnMap([
    [
      'argument',
      [
        'name' => $argument,
      ],
    ],
    [
      'field',
      [
        'id' => $field,
      ],
    ],
  ]);
  $expected = [
    '{{ id }}' => 'last rendered output',
    '{{ arguments.name }}' => 'argument value',
    '{{ raw_arguments.name }}' => 'argument value',
  ];
  $this->assertEquals($expected, $field->getRenderTokens([]));
}

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