diff options
Diffstat (limited to 'js/src/tests/non262/Tuple/cross-realm.js')
-rw-r--r-- | js/src/tests/non262/Tuple/cross-realm.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/js/src/tests/non262/Tuple/cross-realm.js b/js/src/tests/non262/Tuple/cross-realm.js new file mode 100644 index 0000000000..ca385c7ca4 --- /dev/null +++ b/js/src/tests/non262/Tuple/cross-realm.js @@ -0,0 +1,22 @@ +// |reftest| skip-if(!this.hasOwnProperty("Tuple")) + +const realm = newGlobal(); + +const realm_TupleConstructor = realm.eval("Tuple"); +const realm_tuple = realm.eval(` + var tuple = Tuple(1, 2, 3); + tuple; +`); + +assertEq(realm_tuple === #[1, 2, 3], true); +assertEq(realm_tuple.constructor, Tuple); +assertEq(realm.eval("tuple.constructor"), realm_TupleConstructor); + +realm_TupleConstructor.prototype.foo = 42; +assertEq(realm.eval("tuple.foo"), 42); +assertEq(realm_tuple.foo, undefined); + +assertEq("foo" in Object(realm_tuple), false); +assertEq(realm.eval(`"foo" in Object(tuple)`), true); + +if (typeof reportCompare === "function") reportCompare(0, 0); |