browser/devtools/webconsole/test/browser_webconsole_bug_585956_console_trace.js

branch
TOR_BUG_9701
changeset 15
b8a032363ba2
equal deleted inserted replaced
-1:000000000000 0:856d744896cd
1 /* vim:set ts=2 sw=2 sts=2 et: */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3 * License, v. 2.0. If a copy of the MPL was not distributed with this
4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6 const TEST_URI = "http://example.com/browser/browser/devtools/webconsole/test/test-bug-585956-console-trace.html";
7
8 function test() {
9 Task.spawn(runner).then(finishTest);
10
11 function* runner() {
12 let {tab} = yield loadTab("data:text/html;charset=utf8,<p>hello");
13 let hud = yield openConsole(tab);
14
15 content.location = TEST_URI;
16
17 let [result] = yield waitForMessages({
18 webconsole: hud,
19 messages: [{
20 name: "console.trace output",
21 consoleTrace: {
22 file: "test-bug-585956-console-trace.html",
23 fn: "window.foobar585956c",
24 },
25 }],
26 });
27
28 let node = [...result.matched][0];
29 ok(node, "found trace log node");
30
31 let obj = node._messageObject;
32 ok(obj, "console.trace message object");
33
34 // The expected stack trace object.
35 let stacktrace = [
36 { filename: TEST_URI, functionName: "window.foobar585956c", language: 2, lineNumber: 9 },
37 { filename: TEST_URI, functionName: "foobar585956b", language: 2, lineNumber: 14 },
38 { filename: TEST_URI, functionName: "foobar585956a", language: 2, lineNumber: 18 },
39 { filename: TEST_URI, functionName: "", language: 2, lineNumber: 21 }
40 ];
41
42 ok(obj._stacktrace, "found stacktrace object");
43 is(obj._stacktrace.toSource(), stacktrace.toSource(), "stacktrace is correct");
44 isnot(node.textContent.indexOf("bug-585956"), -1, "found file name");
45 }
46 }

mercurial