You are here

public function AreaViewTest::testViewArea in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php \Drupal\Tests\views\Kernel\Handler\AreaViewTest::testViewArea()

Tests the view area handler.

File

core/modules/views/tests/src/Kernel/Handler/AreaViewTest.php, line 33

Class

AreaViewTest
Tests the view area handler.

Namespace

Drupal\Tests\views\Kernel\Handler

Code

public function testViewArea() {

  /** @var \Drupal\Core\Render\RendererInterface $renderer */
  $renderer = $this->container
    ->get('renderer');
  $view = Views::getView('test_area_view');

  // Tests \Drupal\views\Plugin\views\area\View::calculateDependencies().
  $this
    ->assertSame([
    'config' => [
      'views.view.test_simple_argument',
    ],
    'module' => [
      'views_test_data',
    ],
  ], $view
    ->getDependencies());
  $this
    ->executeView($view);
  $output = $view
    ->render();
  $output = $renderer
    ->renderRoot($output);
  $this
    ->assertStringContainsString('js-view-dom-id-' . $view->dom_id, $output, 'The test view is correctly embedded.');
  $view
    ->destroy();
  $view
    ->setArguments([
    27,
  ]);
  $this
    ->executeView($view);
  $output = $view
    ->render();
  $output = $renderer
    ->renderRoot($output);
  $this
    ->assertStringNotContainsString('John', $output, 'The test view is correctly embedded with inherited arguments.');
  $this
    ->assertStringContainsString('George', $output, 'The test view is correctly embedded with inherited arguments.');
  $view
    ->destroy();
}