X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fviews_ui%2Ftests%2Fsrc%2FFunctionalJavascript%2FFilterOptionsTest.php;fp=web%2Fcore%2Fmodules%2Fviews_ui%2Ftests%2Fsrc%2FFunctionalJavascript%2FFilterOptionsTest.php;h=32b1a400cb7b9fcc3aecd14343f07163f3e081bb;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php b/web/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php new file mode 100644 index 000000000..32b1a400c --- /dev/null +++ b/web/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php @@ -0,0 +1,76 @@ +drupalCreateUser([ + 'administer views', + ]); + $this->drupalLogin($admin_user); + } + + /** + * Tests filtering options in the 'Add fields' dialog. + */ + public function testFilterOptionsAddFields() { + $this->drupalGet('admin/structure/views/view/content'); + + $session = $this->getSession(); + $web_assert = $this->assertSession(); + $page = $session->getPage(); + + // Open the dialog. + $page->clickLink('views-add-field'); + + // Wait for the popup to open and the search field to be available. + $options_search = $web_assert->waitForField('override[controls][options_search]'); + + // Test that the both special fields are visible. + $this->assertTrue($page->findField('name[views.views_test_field_1]')->isVisible()); + $this->assertTrue($page->findField('name[views.views_test_field_2]')->isVisible()); + + // Test the ".title" field in search. + $options_search->setValue('FIELD_1_TITLE'); + $page->waitFor(10, function () use ($page) { + return !$page->findField('name[views.views_test_field_2]')->isVisible(); + }); + $this->assertTrue($page->findField('name[views.views_test_field_1]')->isVisible()); + $this->assertFalse($page->findField('name[views.views_test_field_2]')->isVisible()); + + // Test the ".description" field in search. + $options_search->setValue('FIELD_2_DESCRIPTION'); + $page->waitFor(10, function () use ($page) { + return !$page->findField('name[views.views_test_field_1]')->isVisible(); + }); + $this->assertTrue($page->findField('name[views.views_test_field_2]')->isVisible()); + $this->assertFalse($page->findField('name[views.views_test_field_1]')->isVisible()); + + // Test the "label" field not in search. + $options_search->setValue('FIELD_1_LABEL'); + $page->waitFor(10, function () use ($page) { + return !$page->findField('name[views.views_test_field_2]')->isVisible(); + }); + $this->assertFalse($page->findField('name[views.views_test_field_2]')->isVisible()); + $this->assertFalse($page->findField('name[views.views_test_field_1]')->isVisible()); + } + +}