toolkit/devtools/server/tests/unit/test_ignore_caught_exceptions.js

branch
TOR_BUG_3246
changeset 7
129ffea94266
equal deleted inserted replaced
-1:000000000000 0:1b1688d605ee
1 /* Any copyright is dedicated to the Public Domain.
2 http://creativecommons.org/publicdomain/zero/1.0/ */
3
4 /**
5 * Test that setting ignoreCaughtExceptions will cause the debugger to ignore
6 * caught exceptions, but not uncaught ones.
7 */
8
9 var gDebuggee;
10 var gClient;
11 var gThreadClient;
12
13 function run_test()
14 {
15 initTestDebuggerServer();
16 gDebuggee = addTestGlobal("test-stack");
17 gClient = new DebuggerClient(DebuggerServer.connectPipe());
18 gClient.connect(function() {
19 attachTestTabAndResume(gClient, "test-stack", function(aResponse, aTabClient, aThreadClient) {
20 gThreadClient = aThreadClient;
21 test_pause_frame();
22 });
23 });
24 do_test_pending();
25 }
26
27 function test_pause_frame()
28 {
29 gThreadClient.addOneTimeListener("paused", function(aEvent, aPacket) {
30 gThreadClient.addOneTimeListener("paused", function(aEvent, aPacket) {
31 do_check_eq(aPacket.why.type, "exception");
32 do_check_eq(aPacket.why.exception, "bar");
33 gThreadClient.resume(function () {
34 finishClient(gClient);
35 });
36 });
37 gThreadClient.pauseOnExceptions(true, true);
38 gThreadClient.resume();
39 });
40
41 try {
42 gDebuggee.eval("(" + function() {
43 debugger;
44 try {
45 throw "foo";
46 } catch (e) {}
47 throw "bar";
48 } + ")()");
49 } catch (e) {}
50 }

mercurial