|
Packit |
f0b94e |
/* Any copyright is dedicated to the Public Domain.
|
|
Packit |
f0b94e |
* http://creativecommons.org/publicdomain/zero/1.0/ */
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
function countSources(dbg) {
|
|
Packit |
f0b94e |
const sources = dbg.selectors.getSources(dbg.getState());
|
|
Packit |
f0b94e |
return sources.size;
|
|
Packit |
f0b94e |
}
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
/**
|
|
Packit |
f0b94e |
* Test navigating
|
|
Packit |
f0b94e |
* navigating while paused will reset the pause state and sources
|
|
Packit |
f0b94e |
*/
|
|
Packit |
f0b94e |
add_task(async function() {
|
|
Packit |
f0b94e |
const dbg = await initDebugger("doc-script-switching.html");
|
|
Packit |
f0b94e |
const { selectors: { getSelectedSource, isPaused }, getState } = dbg;
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
invokeInTab("firstCall");
|
|
Packit |
f0b94e |
await waitForPaused(dbg);
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
await navigate(dbg, "doc-scripts.html", "simple1.js");
|
|
Packit |
f0b94e |
await addBreakpoint(dbg, "simple1.js", 4);
|
|
Packit |
f0b94e |
invokeInTab("main");
|
|
Packit |
f0b94e |
await waitForPaused(dbg);
|
|
Packit |
f0b94e |
await waitForLoadedSource(dbg, "simple1");
|
|
Packit |
f0b94e |
toggleScopes(dbg);
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
assertPausedLocation(dbg);
|
|
Packit |
f0b94e |
is(countSources(dbg), 5, "5 sources are loaded.");
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
await navigate(dbg, "about:blank");
|
|
Packit |
f0b94e |
await waitForDispatch(dbg, "NAVIGATE");
|
|
Packit |
f0b94e |
is(countSources(dbg), 0, "0 sources are loaded.");
|
|
Packit |
f0b94e |
ok(!isPaused(getState()), "Is not paused");
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
await navigate(
|
|
Packit |
f0b94e |
dbg,
|
|
Packit |
f0b94e |
"doc-scripts.html",
|
|
Packit |
f0b94e |
"simple1.js",
|
|
Packit |
f0b94e |
"simple2.js",
|
|
Packit |
f0b94e |
"simple3.js",
|
|
Packit |
f0b94e |
"long.js",
|
|
Packit |
f0b94e |
"scripts.html"
|
|
Packit |
f0b94e |
);
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
is(countSources(dbg), 5, "5 sources are loaded.");
|
|
Packit |
f0b94e |
|
|
Packit |
f0b94e |
// Test that the current select source persists across reloads
|
|
Packit |
f0b94e |
await selectSource(dbg, "long.js");
|
|
Packit |
f0b94e |
await reload(dbg, "long.js");
|
|
Packit |
f0b94e |
ok(
|
|
Packit |
f0b94e |
getSelectedSource(getState())
|
|
Packit |
f0b94e |
.get("url")
|
|
Packit |
f0b94e |
.includes("long.js"),
|
|
Packit |
f0b94e |
"Selected source is long.js"
|
|
Packit |
f0b94e |
);
|
|
Packit |
f0b94e |
});
|