blob: 650bdf3cd4dc786a40c0a6e93218633f1fe08803 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
|
const Cu = Components.utils;
function run_test() {
// We rely on the crazy "wantXrays:false also causes values return from the
// sandbox to be waived" behavior, because it's the simplest way to get
// waivers out of the sandbox (which has no native objects). :-(
var sb = new Cu.Sandbox('http://www.example.com', {wantXrays: false});
Cu.evalInSandbox("this.foo = {}; Object.defineProperty(foo, 'bar', {get: function() {return {};}});", sb);
do_check_true(sb.foo != XPCNativeWrapper(sb.foo), "sb.foo is waived");
var desc = Object.getOwnPropertyDescriptor(sb.foo, 'bar');
var b = desc.get();
do_check_true(b != XPCNativeWrapper(b), "results from accessor descriptors are waived");
}
|