js/src/jit-test/tests/debug/Source-element-01.js

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 // Source.prototype.element can be an object or undefined.
     3 var g = newGlobal();
     4 var dbg = new Debugger;
     5 var gw = dbg.addDebuggee(g);
     6 g.evaluate("function f(x) { return 2*x; }", {element: { foo: "bar" }});
     7 var fw = gw.getOwnPropertyDescriptor('f').value;
     8 assertEq(typeof fw.script.source.element, "object");
     9 assertEq(fw.script.source.element instanceof Debugger.Object, true);
    10 assertEq(fw.script.source.element.getOwnPropertyDescriptor("foo").value, "bar");
    11 g.evaluate("function f(x) { return 2*x; }");
    12 var fw = gw.getOwnPropertyDescriptor('f').value;
    13 assertEq(typeof fw.script.source.element, "undefined");

mercurial