diff options
Diffstat (limited to 'js/src/tests/non262/Map/iterator-thisv-error.js')
-rw-r--r-- | js/src/tests/non262/Map/iterator-thisv-error.js | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/js/src/tests/non262/Map/iterator-thisv-error.js b/js/src/tests/non262/Map/iterator-thisv-error.js new file mode 100644 index 0000000000..cc85c90f25 --- /dev/null +++ b/js/src/tests/non262/Map/iterator-thisv-error.js @@ -0,0 +1,24 @@ +/* Any copyright is dedicated to the Public Domain. + * http://creativecommons.org/licenses/publicdomain/ */ + +function test(fn, thisv) { + var message; + try { + fn.call(thisv); + } catch (e) { + message = e.message; + } + + assertEq(/^\w+ method called on incompatible.+/.test(message), true); + assertEq(message.includes("std_"), false); +} + +for (var thisv of [null, undefined, false, true, 0, ""]) { + test(Map.prototype.values, thisv); + test(Map.prototype.keys, thisv); + test(Map.prototype.entries, thisv); + test(Map.prototype[Symbol.iterator], thisv); +} + +if (typeof reportCompare === "function") + reportCompare(0, 0); |