Definition of ViewsHandlerArgumentNullTest.
<?php /** * @file * Definition of ViewsHandlerArgumentNullTest. */ require_once BACKDROP_ROOT . '/core/modules/views/tests/views_query.test'; /** * Tests the core views_handler_argument_null handler. */ class ViewsHandlerArgumentNullTest extends ViewsSqlTest { function viewsData() { $data = parent::viewsData(); $data['views_test']['id']['argument']['handler'] = 'views_handler_argument_null'; return $data; } public function testAreaText() { // Test validation $view = $this->getBasicView(); // Add a null argument. $string = $this->randomString(); $view->display['default']->handler->override_option('arguments', array( 'null' => array( 'id' => 'null', 'table' => 'views', 'field' => 'null', ), )); $this->executeView($view); // Make sure that the argument is not validated yet. unset($view->argument['null']->argument_validated); $this->assertTrue($view->argument['null']->validate_arg(26)); // test must_not_be option. unset($view->argument['null']->argument_validated); $view->argument['null']->options['must_not_be'] = TRUE; $this->assertFalse($view->argument['null']->validate_arg(26), 'must_not_be returns FALSE, if there is an argument'); unset($view->argument['null']->argument_validated); $this->assertTrue($view->argument['null']->validate_arg(NULL), 'must_not_be returns TRUE, if there is no argument'); // Test execution. $view = $this->getBasicView(); // Add a argument, which has null as handler. $string = $this->randomString(); $view->display['default']->handler->override_option('arguments', array( 'id' => array( 'id' => 'id', 'table' => 'views_test', 'field' => 'id', ), )); $this->executeView($view, array(26)); // The argument should be ignored, so every result should return. $this->assertEqual(5, count($view->result)); } }