surfaces-03.js (776B)
1 // dumb basics of uncaughtExceptionHook 2 3 load(libdir + 'asserts.js'); 4 5 var desc = Object.getOwnPropertyDescriptor(Debugger.prototype, "uncaughtExceptionHook"); 6 assertEq(typeof desc.get, 'function'); 7 assertEq(typeof desc.set, 'function'); 8 9 assertThrowsInstanceOf(function () { Debugger.prototype.uncaughtExceptionHook = null; }, TypeError); 10 11 var g = newGlobal({newCompartment: true}); 12 var dbg = new Debugger(g); 13 assertEq(desc.get.call(dbg), null); 14 assertThrowsInstanceOf(function () { dbg.uncaughtExceptionHook = []; }, TypeError); 15 assertThrowsInstanceOf(function () { dbg.uncaughtExceptionHook = 3; }, TypeError); 16 dbg.uncaughtExceptionHook = Math.sin; 17 assertEq(dbg.uncaughtExceptionHook, Math.sin); 18 dbg.uncaughtExceptionHook = null; 19 assertEq(dbg.uncaughtExceptionHook, null);