Wed, 31 Dec 2014 06:09:35 +0100
Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
4 /**
5 * Tests if the preferred source is shown when a page is loaded and
6 * the preferred source is specified after another source was definitely shown.
7 */
9 const TAB_URL = EXAMPLE_URL + "doc_script-switching-01.html";
10 const FIRST_URL = EXAMPLE_URL + "code_script-switching-01.js";
11 const SECOND_URL = EXAMPLE_URL + "code_script-switching-02.js";
13 let gTab, gDebuggee, gPanel, gDebugger;
14 let gSources;
16 function test() {
17 initDebugger(TAB_URL).then(([aTab, aDebuggee, aPanel]) => {
18 gTab = aTab;
19 gDebuggee = aDebuggee;
20 gPanel = aPanel;
21 gDebugger = gPanel.panelWin;
22 gSources = gDebugger.DebuggerView.Sources;
24 waitForSourceShown(gPanel, FIRST_URL)
25 .then(() => testSource("", FIRST_URL))
26 .then(() => switchToSource(SECOND_URL))
27 .then(() => testSource(SECOND_URL))
28 .then(() => switchToSource(FIRST_URL))
29 .then(() => testSource(FIRST_URL))
30 .then(() => closeDebuggerAndFinish(gPanel))
31 .then(null, aError => {
32 ok(false, "Got an error: " + aError.message + "\n" + aError.stack);
33 });
34 });
35 }
37 function testSource(aPreferredUrl, aSelectedUrl = aPreferredUrl) {
38 info("Currently preferred source: " + gSources.preferredValue);
39 info("Currently selected source: " + gSources.selectedValue);
41 is(gSources.preferredValue, aPreferredUrl,
42 "The preferred source url wasn't set correctly.");
43 is(gSources.selectedValue, aSelectedUrl,
44 "The selected source isn't the correct one.");
45 }
47 function switchToSource(aUrl) {
48 let finished = waitForSourceShown(gPanel, aUrl);
49 gSources.preferredSource = aUrl;
50 return finished;
51 }
53 registerCleanupFunction(function() {
54 gTab = null;
55 gDebuggee = null;
56 gPanel = null;
57 gDebugger = null;
58 gSources = null;
59 });