js/src/jit-test/tests/debug/Debugger-debuggees-17.js

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 // addDebuggee, hasDebuggee, and removeDebuggee all throw if presented with
     2 // objects that are not valid global object designators.
     4 load(libdir + 'asserts.js');
     6 var dbg = new Debugger;
     8 function check(bad) {
     9   print("check(" + uneval(bad) + ")");
    10   assertThrowsInstanceOf(function () { dbg.addDebuggee(bad); }, TypeError);
    11   assertEq(dbg.getDebuggees().length, 0);
    12   assertThrowsInstanceOf(function () { dbg.hasDebuggee(bad); }, TypeError);
    13   assertThrowsInstanceOf(function () { dbg.removeDebuggee(bad); }, TypeError);
    14 }
    16 var g = newGlobal();
    17 check(g.Object());
    18 check(g.Object);
    19 check(g.Function(""));
    21 // A Debugger.Object belonging to a different Debugger is not a valid way
    22 // to designate a global, even if its referent is a global.
    23 var g2 = newGlobal();
    24 var dbg2 = new Debugger;
    25 var d2g2 = dbg2.addDebuggee(g2);
    26 check(d2g2);

mercurial