123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- /* -*- indent-tabs-mode: nil; js-indent-level: 2 -*- */
- /* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
- /**
- * Test that pretty printing when the debugger is paused does not switch away
- * from the selected source.
- */
- const TAB_URL = EXAMPLE_URL + "doc_pretty-print-on-paused.html";
- var gTab, gPanel, gDebugger, gThreadClient, gSources;
- const SECOND_SOURCE_VALUE = EXAMPLE_URL + "code_ugly-2.js";
- function test() {
- // Wait for debugger panel to be fully set and break on debugger statement
- let options = {
- source: EXAMPLE_URL + "code_script-switching-02.js",
- line: 1
- };
- initDebugger(TAB_URL, options).then(([aTab,, aPanel]) => {
- gTab = aTab;
- gPanel = aPanel;
- gDebugger = gPanel.panelWin;
- gThreadClient = gDebugger.gThreadClient;
- gSources = gDebugger.DebuggerView.Sources;
- Task.spawn(function* () {
- try {
- yield doInterrupt(gPanel);
- let source = gThreadClient.source(getSourceForm(gSources, SECOND_SOURCE_VALUE));
- yield source.setBreakpoint({
- line: 6
- });
- yield doResume(gPanel);
- const bpHit = waitForCaretAndScopes(gPanel, 6);
- callInTab(gTab, "secondCall");
- yield bpHit;
- info("Switch to the second source.");
- const sourceShown = waitForSourceShown(gPanel, SECOND_SOURCE_VALUE);
- gSources.selectedValue = getSourceActor(gSources, SECOND_SOURCE_VALUE);
- yield sourceShown;
- info("Pretty print the source.");
- const prettyPrinted = waitForSourceShown(gPanel, SECOND_SOURCE_VALUE);
- gDebugger.document.getElementById("pretty-print").click();
- yield prettyPrinted;
- yield resumeDebuggerThenCloseAndFinish(gPanel);
- } catch (e) {
- DevToolsUtils.reportException("browser_dbg_pretty-print-on-paused.js", e);
- ok(false, "Got an error: " + DevToolsUtils.safeErrorString(e));
- }
- });
- });
- }
- registerCleanupFunction(function () {
- gTab = null;
- gPanel = null;
- gDebugger = null;
- gThreadClient = null;
- gSources = null;
- });
|