Bug 1567373 - Fix intermittent, check for element before visibility. r=johannh, a=test-only
Differential Revision:
https://phabricator.services.mozilla.com/D44247
--- a/browser/components/protections/test/browser/browser_protections_monitor.js
+++ b/browser/components/protections/test/browser/browser_protections_monitor.js
@@ -71,20 +71,20 @@ add_task(async function() {
Services.logins.addLogin(TEST_LOGIN1);
AboutProtectionsHandler.getMonitorData = mockGetMonitorData(
fakeDataWithNoError
);
await reloadTab(tab);
await ContentTask.spawn(tab.linkedBrowser, {}, async function() {
await ContentTaskUtils.waitForCondition(() => {
- const noLogins = content.document.querySelector(
+ const hasLogins = content.document.querySelector(
".monitor-card.has-logins"
);
- return ContentTaskUtils.is_visible(noLogins);
+ return hasLogins && ContentTaskUtils.is_visible(hasLogins);
}, "Monitor card for user with stored logins is shown.");
const hasLoginsHeaderContent = content.document.querySelector(
"#monitor-header-content span"
);
const cardBody = content.document.querySelector(".monitor-card .card-body");
ok(
@@ -130,20 +130,20 @@ add_task(async function() {
AboutProtectionsHandler.getMonitorData = mockGetMonitorData(
noBreachedLoginsData
);
await reloadTab(tab);
await ContentTask.spawn(tab.linkedBrowser, {}, async function() {
await ContentTaskUtils.waitForCondition(() => {
- const noLogins = content.document.querySelector(
+ const hasLogins = content.document.querySelector(
".monitor-card.has-logins"
);
- return ContentTaskUtils.is_visible(noLogins);
+ return hasLogins && ContentTaskUtils.is_visible(hasLogins);
}, "Monitor card for user with stored logins is shown.");
const lockwiseSection = content.document.querySelector(
".monitor-breached-passwords"
);
ok(
ContentTaskUtils.is_hidden(lockwiseSection),
@@ -195,17 +195,17 @@ add_task(async function() {
});
async function checkNoLoginsContentIsDisplayed(tab, expectedLinkContent) {
await ContentTask.spawn(tab.linkedBrowser, null, async function() {
await ContentTaskUtils.waitForCondition(() => {
const noLogins = content.document.querySelector(
".monitor-card.no-logins"
);
- return ContentTaskUtils.is_visible(noLogins);
+ return noLogins && ContentTaskUtils.is_visible(noLogins);
}, "Monitor card for user with no logins is shown.");
const noLoginsHeaderContent = content.document.querySelector(
"#monitor-header-content span"
);
const cardBody = content.document.querySelector(".monitor-card .card-body");
ok(