fune/browser/base/content/test/statuspanel/head.js
Mike Conley fd60b630a8 Bug 1445455 - Test that it's possible to show the same StatusPanel value twice in a row. r=dao
MozReview-Commit-ID: 17U8JHVO2PN

--HG--
extra : rebase_source : e1665eb08394ccc2e51695a74b31acc18d2e0b41
2018-03-13 18:21:47 -04:00

38 lines
1.2 KiB
JavaScript

/* Any copyright is dedicated to the Public Domain.
* http://creativecommons.org/publicdomain/zero/1.0/ */
/**
* Returns a Promise that resolves when a StatusPanel for a
* window has finished being shown. Also asserts that the
* text content of the StatusPanel matches a value.
*
* @param win (browser window)
* The window that the StatusPanel belongs to.
* @param value (string)
* The value that the StatusPanel should show.
* @returns Promise
*/
async function promiseStatusPanelShown(win, value) {
let panel = win.StatusPanel.panel;
await BrowserTestUtils.waitForEvent(panel, "transitionend", (e) => {
return e.propertyName === "opacity" &&
win.getComputedStyle(e.target).opacity == "1";
});
Assert.equal(win.StatusPanel._labelElement.value, value);
}
/**
* Returns a Promise that resolves when a StatusPanel for a
* window has finished being hidden.
*
* @param win (browser window)
* The window that the StatusPanel belongs to.
*/
async function promiseStatusPanelHidden(win) {
let panel = win.StatusPanel.panel;
await BrowserTestUtils.waitForEvent(panel, "transitionend", (e) => {
return e.propertyName === "opacity" &&
win.getComputedStyle(e.target).opacity == "0";
});
}