diff --git a/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.module b/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.module index 82584c1..3d1ac8f 100644 --- a/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.module +++ b/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.module @@ -14,5 +14,5 @@ * searched on. */ function views_ui_test_field_form_views_ui_add_handler_form_alter(&$form, FormStateInterface $form_state) { - //$form['options']['name']['#options']['views.views_test_field_1']['title']['data']['#title'] = 'TEST_FIELD_1_LABEL'; + $form['options']['name']['#options']['views.views_test_field_1']['title']['data']['#title'] .= ' FIELD_1_LABEL'; } diff --git a/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.views.inc b/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.views.inc index 4f24b40..eb2f9ef 100644 --- a/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.views.inc +++ b/core/modules/views_ui/tests/modules/views_ui_test_field/views_ui_test_field.views.inc @@ -11,15 +11,15 @@ function views_ui_test_field_views_data() { $data['views']['views_test_field_1'] = array( - 'title' => t('Views test field - FIELD_1_TITLE'), - 'help' => t('Provide test field for testing purposes. - FIELD_1_DESCRIPTION'), + 'title' => t('Views test field 1 - FIELD_1_TITLE'), + 'help' => t('Field 1 for testing purposes - FIELD_1_DESCRIPTION'), 'field' => array( 'id' => 'views_test_field_1', ), ); $data['views']['views_test_field_2'] = array( - 'title' => t('Secondary field for testing purposes - FIELD_2_TITLE'), - 'help' => t('Provide a secondary field for testing purposes. - FIELD_2_DESCRIPTION'), + 'title' => t('Views test field 2 - FIELD_2_TITLE'), + 'help' => t('Field 2 for testing purposes - FIELD_2_DESCRIPTION'), 'field' => array( 'id' => 'views_test_field_2', ), diff --git a/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php b/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php index 63cb5a0..a2ddbda 100644 --- a/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php +++ b/core/modules/views_ui/tests/src/FunctionalJavascript/FilterOptionsTest.php @@ -45,101 +45,33 @@ public function testFilterOptionsAddFields() { // Wait for the popup to open and the search field to be available. $options_search = $web_assert->waitForField('override[controls][options_search]'); - // Validate the amount of visible rows equals the total amount of rows. - $all_rows = $page->findAll('css', '.filterable-option'); - $visible_rows = $this->filterVisibleElements($all_rows); - $this->assertTrue(count($visible_rows) == count($all_rows)); + // 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()); - // Populate the options search field and test the title field in search. + // Test the ".title" field in search. $options_search->setValue('FIELD_1_TITLE'); - - // Wait for the filtering to finish by checking on a field that we know - // should now be invisible. - $page->waitFor(10, function() use ($page) { - return !$page->findField('name[views.views_test_field_2]')->isVisible(); - }); - - // Find matching rows based on visibility. - $visible_rows = $this->filterVisibleElements($all_rows); - - // Test that only the test_field_1 row is visible. - $this->assertEquals(1, count($visible_rows)); - - // Test that the first test field is visible. - $field = $page->findField('name[views.views_test_field_1]'); - $this->assertTrue($field->isVisible()); - $field = $page->findField('name[views.views_test_field_2]'); - $this->assertFalse($field->isVisible()); - - // Reset the search value and validate both fields are visible again. - $options_search->setValue(''); - $page->waitFor(10, function() use ($page) { - return $page->findField('name[views.views_test_field_2]')->isVisible(); - }); - - // Assert both fields are visible again. - $field = $page->findField('name[views.views_test_field_1]'); - $this->assertTrue($field->isVisible()); - $field = $page->findField('name[views.views_test_field_2]'); - $this->assertTrue($field->isVisible()); - - // Now search again but this time use the description. - $options_search->setValue('FIELD_1_DESCRIPTION'); - - // Wait for the filtering to finish. - $page->waitFor(10, function() use ($page) { + $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()); - // Find matching rows based on visibility. - $visible_rows = $this->filterVisibleElements($all_rows); - - // Test that only the test_field_1 row is visible. - $this->assertEquals(1, count($visible_rows) > 0); - - // Test that the first test field is visible and the second is not. - $field = $page->findField('name[views.views_test_field_1]'); - $this->assertTrue($field->isVisible()); - $field = $page->findField('name[views.views_test_field_2]'); - $this->assertFalse($field->isVisible()); - - // Reset the search value and validate both fields are visible again. - $options_search->setValue(''); - $page->waitFor(10, function() use ($page) { - return $page->findField('name[views.views_test_field_2]')->isVisible(); - }); - - // Assert both fields are visible again. - $field = $page->findField('name[views.views_test_field_1]'); - $this->assertTrue($field->isVisible()); - $field = $page->findField('name[views.views_test_field_2]'); - $this->assertTrue($field->isVisible()); - - // Assert that the label for the input field is not used for the search. - $options_search->setValue('TEST_FIELD_1_LABEL'); - $page->waitFor(10, function() use ($page) { + // 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 that no rows are visible. - $visible_rows = $this->filterVisibleElements($all_rows); - $this->assertEquals(0, count($visible_rows)); - } - - /** - * Removes any non-visible elements from the passed array. - * - * @param NodeElement[] $elements - * Array of elements to filter. - * - * @return NodeElement[] - * Array of visible elements. - */ - protected function filterVisibleElements($elements) { - $elements = array_filter($elements, function(NodeElement $element) { - return $element->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(); }); - return $elements; + $this->assertFalse($page->findField('name[views.views_test_field_2]')->isVisible()); + $this->assertFalse($page->findField('name[views.views_test_field_1]')->isVisible()); } }