mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-02 15:15:23 +00:00
66 lines
2.2 KiB
JavaScript
66 lines
2.2 KiB
JavaScript
/* Any copyright is dedicated to the Public Domain.
|
|
http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
|
|
///////////////////
|
|
//
|
|
// Whitelisting this test.
|
|
// As part of bug 1077403, the leaking uncaught rejection should be fixed.
|
|
//
|
|
thisTestLeaksUncaughtRejectionsAndShouldBeFixed("Error: Connection closed");
|
|
|
|
/**
|
|
* Tests that reloading a tab will properly listen for the `start-context`
|
|
* event and reshow the tools after reloading.
|
|
*/
|
|
|
|
add_task(function*() {
|
|
let { target, panel } = yield initWebAudioEditor(SIMPLE_CONTEXT_URL);
|
|
let { gFront, $ } = panel.panelWin;
|
|
|
|
is($("#reload-notice").hidden, false,
|
|
"The 'reload this page' notice should initially be visible.");
|
|
is($("#waiting-notice").hidden, true,
|
|
"The 'waiting for an audio context' notice should initially be hidden.");
|
|
is($("#content").hidden, true,
|
|
"The tool's content should initially be hidden.");
|
|
|
|
let navigating = once(target, "will-navigate");
|
|
let started = once(gFront, "start-context");
|
|
|
|
reload(target);
|
|
|
|
yield navigating;
|
|
|
|
is($("#reload-notice").hidden, true,
|
|
"The 'reload this page' notice should be hidden when navigating.");
|
|
is($("#waiting-notice").hidden, false,
|
|
"The 'waiting for an audio context' notice should be visible when navigating.");
|
|
is($("#content").hidden, true,
|
|
"The tool's content should still be hidden.");
|
|
|
|
yield started;
|
|
|
|
is($("#reload-notice").hidden, true,
|
|
"The 'reload this page' notice should be hidden after context found.");
|
|
is($("#waiting-notice").hidden, true,
|
|
"The 'waiting for an audio context' notice should be hidden after context found.");
|
|
is($("#content").hidden, false,
|
|
"The tool's content should not be hidden anymore.");
|
|
|
|
navigating = once(target, "will-navigate");
|
|
started = once(gFront, "start-context");
|
|
|
|
reload(target);
|
|
|
|
yield Promise.all([navigating, started]);
|
|
|
|
is($("#reload-notice").hidden, true,
|
|
"The 'reload this page' notice should be hidden after context found after reload.");
|
|
is($("#waiting-notice").hidden, true,
|
|
"The 'waiting for an audio context' notice should be hidden after context found after reload.");
|
|
is($("#content").hidden, false,
|
|
"The tool's content should reappear without closing and reopening the toolbox.");
|
|
|
|
yield teardown(target);
|
|
});
|