You are here

public function AreaTitleWebTest::testTitleText in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/views/src/Tests/Handler/AreaTitleWebTest.php \Drupal\views\Tests\Handler\AreaTitleWebTest::testTitleText()

Tests the title area handler.

File

core/modules/views/src/Tests/Handler/AreaTitleWebTest.php, line 40
Contains \Drupal\views\Tests\Handler\AreaTitleWebTest.

Class

AreaTitleWebTest
Tests the title area handler with a web test.

Namespace

Drupal\views\Tests\Handler

Code

public function testTitleText() {

  // Confirm that the view has the normal title before making the view return
  // no result.
  $this
    ->drupalGet('test-area-title');
  $this
    ->assertTitle('test_title_header | Drupal');

  // Change the view to return no result.

  /** @var \Drupal\views\Entity\View $view */
  $view = View::load('test_area_title');
  $display =& $view
    ->getDisplay('default');
  $display['display_options']['filters']['name'] = [
    'field' => 'name',
    'id' => 'name',
    'table' => 'views_test_data',
    'relationship' => 'none',
    'plugin_id' => 'string',
    // Add a value which does not exist. The dataset is defined in
    // \Drupal\views\Tests\ViewTestData::dataSet().
    'value' => 'Euler',
  ];
  $view
    ->save();
  $this
    ->drupalGet('test-area-title');
  $this
    ->assertTitle('test_title_empty | Drupal');

  // Change the view to return a result instead.

  /** @var \Drupal\views\Entity\View $view */
  $view = View::load('test_area_title');
  $display =& $view
    ->getDisplay('default');
  $display['display_options']['filters']['name'] = [
    'field' => 'name',
    'id' => 'name',
    'table' => 'views_test_data',
    'relationship' => 'none',
    'plugin_id' => 'string',
    // Change to a value which does exist. The dataset is defined in
    // \Drupal\views\Tests\ViewTestData::dataSet().
    'value' => 'Ringo',
  ];
  $view
    ->save();
  $this
    ->drupalGet('test-area-title');
  $this
    ->assertTitle('test_title_header | Drupal');
}