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 // Basic onExceptionUnwind hook test.
3 load(libdir + "asserts.js");
5 var g = newGlobal();
6 var dbg = Debugger(g);
7 var hit = false;
8 dbg.onExceptionUnwind = function (frame, exc) {
9 // onExceptionUnwind is called multiple times as the stack is unwound.
10 // Only check the first hit.
11 assertEq(arguments.length, 2);
12 assertEq(frame instanceof Debugger.Frame, true);
13 if (!hit) {
14 assertEq(exc, 101);
15 assertEq(frame.type, "call");
16 assertEq(frame.callee.name, "f");
17 assertEq(frame.older.type, "eval");
18 hit = true;
19 }
20 };
22 g.eval("function f() { throw 101; }");
23 assertThrowsValue(function () { g.eval("f();"); }, 101);
24 assertEq(hit, true);