diff options
Diffstat (limited to 'js/src/jit-test/tests/for-of/proxy-2.js')
-rw-r--r-- | js/src/jit-test/tests/for-of/proxy-2.js | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/js/src/jit-test/tests/for-of/proxy-2.js b/js/src/jit-test/tests/for-of/proxy-2.js new file mode 100644 index 000000000..e0c7b116c --- /dev/null +++ b/js/src/jit-test/tests/for-of/proxy-2.js @@ -0,0 +1,18 @@ +// Basic for-of test with Proxy whose iterator method is a generator. + +var arr = ['a', 'b', 'c', 'd']; +var proxy = new Proxy(arr, { + get(target, property, receiver) { + if (property === Symbol.iterator) { + return function* () { + for (var i = 0; i < arr.length; i++) + yield arr[i]; + } + } + + return Reflect.get(target, property, receiver); + } +}); + +for (var i = 0; i < 2; i++) + assertEq([...proxy].join(","), "a,b,c,d"); |