js/src/gdb/tests/test-Root.py

Tue, 06 Jan 2015 21:39:09 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Tue, 06 Jan 2015 21:39:09 +0100
branch
TOR_BUG_9701
changeset 8
97036ab72558
permissions
-rw-r--r--

Conditionally force memory storage according to privacy.thirdparty.isolate;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 # Test printing Handles.
     3 assert_subprinter_registered('SpiderMonkey', 'instantiations-of-JS::Rooted')
     4 assert_subprinter_registered('SpiderMonkey', 'instantiations-of-JS::Handle')
     5 assert_subprinter_registered('SpiderMonkey', 'instantiations-of-JS::MutableHandle')
     6 assert_subprinter_registered('SpiderMonkey', 'instantiations-of-js::EncapsulatedPtr')
     7 assert_subprinter_registered('SpiderMonkey', 'js::EncapsulatedValue')
     9 run_fragment('Root.handle')
    11 assert_pretty('obj', '(JSObject * const)  [object global] delegate')
    12 assert_pretty('mutableObj', '(JSObject *)  [object global] delegate')
    14 run_fragment('Root.HeapSlot')
    16 # This depends on implementation details of arrays, but since HeapSlot is
    17 # not a public type, I'm not sure how to avoid doing *something* ugly.
    18 assert_pretty('array->elements[0]', '$jsval("plinth")')

mercurial