diff options
Diffstat (limited to 'js/src/jit-test/tests/for-of/semantics-02.js')
-rw-r--r-- | js/src/jit-test/tests/for-of/semantics-02.js | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/for-of/semantics-02.js b/js/src/jit-test/tests/for-of/semantics-02.js new file mode 100644 index 000000000..27b132329 --- /dev/null +++ b/js/src/jit-test/tests/for-of/semantics-02.js @@ -0,0 +1,12 @@ +// Replacing Array.prototype.iterator with something non-callable makes for-of throw. + +load(libdir + "asserts.js"); +load(libdir + "iteration.js"); + +function test(v) { + Array.prototype[Symbol.iterator] = v; + assertThrowsInstanceOf(function () { for (var x of []) ; }, TypeError); +} +test(undefined); +test(null); +test({}); |