function DisplayTest::testDisplayPlugin in Views (for Drupal 7) 8.3
Tests the display test plugin.
See also
Drupal\views_test_data\Plugin\views\display\DisplayTest
File
- lib/
Drupal/ views/ Tests/ Plugin/ DisplayTest.php, line 51 - Definition of Drupal\views\Tests\Plugin\DisplayTest.
Class
- DisplayTest
- Tests the basic display plugin.
Namespace
Drupal\views\Tests\PluginCode
function testDisplayPlugin() {
$view = views_get_view('frontpage');
// Add a new 'display_test' display and test it's there.
$view->storage
->addDisplay('display_test');
$this
->assertTrue(isset($view->storage->display['display_test_1']), 'Added display has been assigned to "display_test_1"');
// Check the the display options are like expected.
$options = array(
'display_options' => array(),
'display_plugin' => 'display_test',
'id' => 'display_test_1',
'display_title' => 'Display test',
'position' => NULL,
);
$this
->assertEqual($view->storage->display['display_test_1'], $options);
$view
->setDisplay('display_test_1');
$this
->assertTrue($view->display_handler instanceof DisplayTestPlugin, 'The correct display handler instance is on the view object.');
// Check the test option.
$this
->assertIdentical($view->display_handler
->getOption('test_option'), '');
$output = $view
->preview();
$this
->assertTrue(strpos($output, '<h1></h1>') !== FALSE, 'An empty value for test_option found in output.');
// Change this option and check the title of out output.
$view->display_handler
->overrideOption('test_option', 'Test option title');
$view
->save();
$output = $view
->preview();
// Test we have our custom <h1> tag in the output of the view.
$this
->assertTrue(strpos($output, '<h1>Test option title</h1>') !== FALSE, 'The test_option value found in display output title.');
// Test that the display category/summary is in the UI.
$this
->drupalGet('admin/structure/views/view/frontpage/edit/display_test_1');
$this
->assertText('Display test settings');
$this
->clickLink('Test option title');
$this->randomString = $this
->randomString();
$this
->drupalPost(NULL, array(
'test_option' => $this->randomString,
), t('Apply'));
// Check the new value has been saved by checking the UI summary text.
$this
->drupalGet('admin/structure/views/view/frontpage/edit/display_test_1');
$this
->assertRaw($this->randomString);
// Test the enable/disable status of a display.
$view->display_handler
->setOption('enabled', FALSE);
$this
->assertFalse($view->display_handler
->isEnabled(), 'Make sure that isEnabled returns FALSE on a disabled display.');
$view->display_handler
->setOption('enabled', TRUE);
$this
->assertTrue($view->display_handler
->isEnabled(), 'Make sure that isEnabled returns TRUE on a disabled display.');
}