array-ctor.js (848B)
1 function testArrayRealm() { 2 var g = newGlobal(); 3 var A = g.Array; 4 for (var i = 0; i < 100; i++) { 5 var a; 6 a = new A(); 7 assertEq(isSameCompartment(a, g), true); 8 assertEq(Object.getPrototypeOf(a), A.prototype); 9 10 a = new A(i); 11 assertEq(isSameCompartment(a, g), true); 12 assertEq(Object.getPrototypeOf(a), A.prototype); 13 } 14 } 15 testArrayRealm(); 16 17 function testErrorRealm() { 18 var g = newGlobal(); 19 var A = g.Array; 20 for (var i = 50; i > -50; i--) { 21 var a = null; 22 var ex = null; 23 try { 24 a = new A(i); 25 } catch (e) { 26 ex = e; 27 } 28 if (i >= 0) { 29 assertEq(Object.getPrototypeOf(a), A.prototype); 30 } else { 31 assertEq(ex instanceof g.RangeError, true); 32 } 33 } 34 } 35 testErrorRealm();