3 namespace Drupal\Tests\views\Kernel\Handler;
5 use Drupal\Tests\views\Kernel\ViewsKernelTestBase;
6 use Drupal\views\Views;
9 * Tests the core views_handler_area_text handler.
12 * @see \Drupal\views\Plugin\views\area\Text
14 class AreaTextTest extends ViewsKernelTestBase {
16 public static $modules = ['system', 'user', 'filter'];
19 * Views used by this test.
23 public static $testViews = ['test_view'];
25 protected function setUp($import_test_views = TRUE) {
28 $this->installConfig(['system', 'filter']);
29 $this->installEntitySchema('user');
32 public function testAreaText() {
33 /** @var \Drupal\Core\Render\RendererInterface $renderer */
34 $renderer = $this->container->get('renderer');
35 $view = Views::getView('test_view');
39 $string = $this->randomMachineName();
40 $view->displayHandlers->get('default')->overrideOption('header', [
52 $this->executeView($view);
54 $view->display_handler->handlers['header']['area']->options['content']['format'] = $this->randomString();
55 $build = $view->display_handler->handlers['header']['area']->render();
56 $this->assertEqual('', $renderer->renderRoot($build), 'Nonexistent format should return empty markup.');
58 $view->display_handler->handlers['header']['area']->options['content']['format'] = filter_default_format();
59 $build = $view->display_handler->handlers['header']['area']->render();
60 $this->assertEqual(check_markup($string), $renderer->renderRoot($build), 'Existent format should return something');
62 // Empty results, and it shouldn't be displayed .
63 $this->assertEqual([], $view->display_handler->handlers['header']['area']->render(TRUE), 'No result should lead to no header');
64 // Empty results, and it should be displayed.
65 $view->display_handler->handlers['header']['area']->options['empty'] = TRUE;
66 $build = $view->display_handler->handlers['header']['area']->render(TRUE);
67 $this->assertEqual(check_markup($string), $renderer->renderRoot($build), 'No result, but empty enabled lead to a full header');