summaryrefslogtreecommitdiffstats
path: root/js/src/jit-test/tests/debug/Debugger-onNewGlobalObject-12.js
blob: c408618110c495dd69c5d6ec4d43d5855bb78152 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
// Resumption values from uncaughtExceptionHook from onNewGlobalObject
// handlers affect the dispatch of the event to other Debugger instances.

load(libdir + 'asserts.js');

var dbg1 = new Debugger;
var dbg2 = new Debugger;
var dbg3 = new Debugger;
var log;
var count;

dbg1.onNewGlobalObject = dbg2.onNewGlobalObject = dbg3.onNewGlobalObject = function () {
  log += 'n';
  throw 'party';
};

dbg1.uncaughtExceptionHook = dbg2.uncaughtExceptionHook = dbg3.uncaughtExceptionHook =
function (ex) {
  log += 'u';
  assertEq(ex, 'party');
  if (++count == 2)
    return { throw: 'fit' };
  return undefined;
};

log = '';
count = 0;
assertEq(typeof newGlobal(), 'object');
assertEq(log, 'nunu');