Skip to content
Snippets Groups Projects
Commit 7550e279 authored by Ben Mullins's avatar Ben Mullins Committed by Tim Plunkett
Browse files

Issue #3300447 by bnjmnm, phenaproxima: Fragile assertions in ProjectBrowserUITest

parent d4d05479
No related branches found
No related tags found
No related merge requests found
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
File suppressed by a .gitattributes entry or the file's encoding is unsupported.
......@@ -17,7 +17,6 @@
export let page = 0;
export let pageIndex = 0;
export let pageSize = 12;
export let responsive = true;
export let rows;
export let labels = {
empty: Drupal.t('No records available'),
......@@ -67,7 +66,7 @@
<svelte:component this={Search} on:search={onSearch} />
</div>
</slot>
<div class={`grid ${$$props.class}`} class:responsive>
<div class={`${$$props.class}`}>
<slot name="head" />
{#if loading}
<Loading />
......
......@@ -46,6 +46,7 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
$grid_text = $this->getSession()->getPage()->find('css', '#project-browser .toggle-buttons .grid-button')->getText();
$this->assertEquals('Grid', $grid_text);
$assert_session->waitForElementVisible('css', '#project-browser .project');
$this->assertTrue($assert_session->waitForText('Results'));
$assert_session->pageTextNotContains('No records available');
}
......@@ -72,18 +73,18 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
$this->drupalGet('admin/modules/browse');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertNotNull($assert_session->waitForElement('css', '.pager__item--next'));
$this->assertTrue($assert_session->waitForText('Results'));
$this->assertNotNull($assert_session->waitForElement('css', '.pager__item--next', 20000));
$assert_session->elementsCount('css', '.pager__item--next', 1);
$page->pressButton('Clear filters');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$assert_session->waitForElement('css', '.pager__item--next');
$this->assertTrue($assert_session->waitForText('Results'));
$this->assertNotNull($assert_session->waitForElement('css', '.pager__item--next', 20000));
$assert_session->elementsCount('css', '.pager__item--next', 1);
$page->find('css', 'a[aria-label="Next page"]')->click();
$assert_session->waitForElementVisible('css', '#project-browser .project');
$this->assertNotNull($assert_session->waitForElement('css', '.pager__item--previous', 20000));
$assert_session->elementsCount('css', '.pager__item--previous', 1);
}
......@@ -96,7 +97,7 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
$this->drupalGet('admin/modules/browse');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertTrue($assert_session->waitForText('Results'));
$second_filter_selector = 'p.filters-applied:last-of-type';
$second_filter_element = $page->find('css', $second_filter_selector);
// Make sure the second filter applied is the security covered filter.
......@@ -104,14 +105,14 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
// Clear the security covered filter.
$this->click("$second_filter_selector > button");
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertTrue($assert_session->waitForText('Results'));
$filter_icon_selector = $page->find('css', '.advanced-filter-btn');
$filter_icon_selector->click();
// Clear all filters.
$page->pressButton('Clear filters');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertTrue($assert_session->waitForText('Results'));
}
/**
......@@ -122,11 +123,11 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
$this->drupalGet('admin/modules/browse');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertTrue($assert_session->waitForText('Results'));
// RandomData always give an image URL. Sometimes it is a fake URL on
// purpose so it 404s. This check means that the original image was not
// found and it was replaced by the placeholder.
$assert_session->responseContains('puzzle-piece-placeholder.svg');
$this->assertNotNull($assert_session->waitForElementVisible('css', 'img[src$="images/puzzle-piece-placeholder.svg"]'));
}
/**
......@@ -138,7 +139,7 @@ class ProjectBrowserPluginTest extends WebDriverTestBase {
$this->drupalGet('admin/modules/browse');
$assert_session->waitForElementVisible('css', '#project-browser .project');
$assert_session->pageTextContains('Results');
$this->assertTrue($assert_session->waitForText('Results'));
$disabled_button = $page->find('css', '.button.is-disabled');
$this->assertEquals('Not compatible', $disabled_button->getText());
}
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment