You are here

protected function AdminToolbarSearchTestBase::assertSuggestionContains in Admin Toolbar 3.x

Same name and namespace in other branches
  1. 8.2 admin_toolbar_search/tests/src/FunctionalJavascript/AdminToolbarSearchTestBase.php \Drupal\Tests\admin_toolbar_search\FunctionalJavascript\AdminToolbarSearchTestBase::assertSuggestionContains()

Assert that the search suggestions contain a given string with given input.

Parameters

string $search: The string to search for.

string $contains: Some HTML that is expected to be within the suggestions element.

2 calls to AdminToolbarSearchTestBase::assertSuggestionContains()
AdminToolbarSearchTest::testToolbarSearch in admin_toolbar_search/tests/src/FunctionalJavascript/AdminToolbarSearchTest.php
Tests search functionality without admin_toolbar_tools enabled.
AdminToolbarToolsSearchTest::testToolbarSearch in admin_toolbar_search/tests/src/FunctionalJavascript/AdminToolbarToolsSearchTest.php
Tests search functionality with admin_toolbar_tools enabled.

File

admin_toolbar_search/tests/src/FunctionalJavascript/AdminToolbarSearchTestBase.php, line 113

Class

AdminToolbarSearchTestBase
Base class for testing the functionality of admin toolbar search.

Namespace

Drupal\Tests\admin_toolbar_search\FunctionalJavascript

Code

protected function assertSuggestionContains($search, $contains) {
  $this
    ->resetSearch();
  $page = $this
    ->getSession()
    ->getPage();
  $page
    ->fillField('admin-toolbar-search-input', $search);
  $this
    ->getSession()
    ->getDriver()
    ->keyDown('//input[@id="admin-toolbar-search-input"]', ' ');
  $page
    ->waitFor(3, function () use ($page) {
    return $page
      ->find('css', 'ul.ui-autocomplete')
      ->isVisible() === TRUE;
  });
  $suggestions_markup = $page
    ->find('css', 'ul.ui-autocomplete')
    ->getHtml();
  $this
    ->assertStringContainsString($contains, $suggestions_markup);
}