Source code
Revision control
Copy as Markdown
Other Tools
Test Info: Warnings
- This test gets skipped with pattern: asan OR os == 'linux' && debug OR tsan
- Manifest: devtools/client/debugger/test/mochitest/browser_aj.toml
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
"use strict";
add_task(async function () {
const dbg = await initDebugger("doc-html-breakpoints.html");
await selectSource(dbg, "doc-html-breakpoints.html");
// Reload the page so that we know the debugger is already open and
// functional before the page loads and we start getting notifications
// about new actors being created in the page content.
await reload(dbg, "doc-html-breakpoints.html");
await waitForBreakableLine(dbg, "doc-html-breakpoints.html", 8);
await addBreakpoint(dbg, "doc-html-breakpoints.html", 8);
// Ensure that the breakpoints get added once the later scripts load.
await waitForBreakableLine(dbg, "doc-html-breakpoints.html", 15);
await addBreakpoint(dbg, "doc-html-breakpoints.html", 15);
await waitForBreakableLine(dbg, "doc-html-breakpoints.html", 20);
await addBreakpoint(dbg, "doc-html-breakpoints.html", 20);
await reload(dbg, "doc-html-breakpoints.html", "simple2.js");
invokeInTab("test1");
await waitForPaused(dbg);
const htmlSource = findSource(dbg, "doc-html-breakpoints.html");
is(htmlSource.isHTML, true, "The html page is flagged as an html source");
is(
findSource(dbg, "simple2.js").isHTML,
false,
"The js source is not flagged as an html source"
);
await assertPausedAtSourceAndLine(dbg, htmlSource.id, 8);
await resume(dbg);
await waitForBreakableLine(dbg, "doc-html-breakpoints.html", 15);
invokeInTab("test3");
await waitForPaused(dbg);
await assertPausedAtSourceAndLine(dbg, htmlSource.id, 15);
await resume(dbg);
await waitForBreakableLine(dbg, "doc-html-breakpoints.html", 20);
invokeInTab("test4");
await waitForPaused(dbg);
await assertPausedAtSourceAndLine(dbg, htmlSource.id, 20);
await resume(dbg);
});