js/src/jit-test/tests/collections/constructor-errors.js

changeset 0
6474c204b198
equal deleted inserted replaced
-1:000000000000 0:c65bc531d6f1
1 // The Set constructor throws TypeError when passed a non-iterable argument.
2
3 load(libdir + "asserts.js");
4
5 function argsobj() { return arguments; }
6
7 var misc = [
8 {}, {x: 1}, Math, isNaN,
9 Object.create(null),
10 argsobj(0, 1, 2),
11 null,
12 true, 0, 3.1416,
13 new Boolean(true), new Number(0),
14 {iterator: function () { return undefined; }},
15 {iterator: function () { return null; }},
16 {iterator: function () { return true; }},
17 {iterator: function () { return 17; }},
18 ];
19
20 for (var v of misc) {
21 assertThrowsInstanceOf(function () { Set(v); }, TypeError);
22 assertThrowsInstanceOf(function () { Map(v); }, TypeError);
23 }

mercurial