function RendererTest::testRenderWithThemeArguments

Same name and namespace in other branches
  1. 8.9.x core/tests/Drupal/Tests/Core/Render/RendererTest.php \Drupal\Tests\Core\Render\RendererTest::testRenderWithThemeArguments()
  2. 10 core/tests/Drupal/Tests/Core/Render/RendererTest.php \Drupal\Tests\Core\Render\RendererTest::testRenderWithThemeArguments()
  3. 11.x core/tests/Drupal/Tests/Core/Render/RendererTest.php \Drupal\Tests\Core\Render\RendererTest::testRenderWithThemeArguments()

@covers ::render @covers ::doRender

File

core/tests/Drupal/Tests/Core/Render/RendererTest.php, line 775

Class

RendererTest
@coversDefaultClass <a href="/api/drupal/core%21lib%21Drupal%21Core%21Render%21Renderer.php/class/Renderer/9" title="Turns a render array into an HTML string." class="local">\Drupal\Core\Render\Renderer</a> @group Render

Namespace

Drupal\Tests\Core\Render

Code

public function testRenderWithThemeArguments() {
    $element = [
        '#theme' => 'common_test_foo',
        '#foo' => $this->randomMachineName(),
        '#bar' => $this->randomMachineName(),
    ];
    $this->themeManager
        ->expects($this->once())
        ->method('render')
        ->with('common_test_foo', $this->defaultThemeVars + $element)
        ->willReturnCallback(function ($hook, $vars) {
        return $vars['#foo'] . $vars['#bar'];
    });
    // Tests that passing arguments to the theme function works.
    $this->assertEquals($this->renderer
        ->renderRoot($element), $element['#foo'] . $element['#bar'], 'Passing arguments to theme functions works');
}

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