diff options
Diffstat (limited to '')
-rw-r--r-- | js/src/tests/non262/AsyncIterator/prototype/flatMap/inner-generator.js | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/js/src/tests/non262/AsyncIterator/prototype/flatMap/inner-generator.js b/js/src/tests/non262/AsyncIterator/prototype/flatMap/inner-generator.js new file mode 100644 index 0000000000..08c0dfbba7 --- /dev/null +++ b/js/src/tests/non262/AsyncIterator/prototype/flatMap/inner-generator.js @@ -0,0 +1,36 @@ +// |reftest| skip-if(!this.hasOwnProperty('AsyncIterator')) + +// +// +/*--- +esid: pending +description: %AsyncIterator.prototype%.flatMap innerIterator can be a generator. +info: > + Iterator Helpers proposal 2.1.6.7 +features: [iterator-helpers] +---*/ + +async function* gen() { + yield 1; + yield 2; +} + +(async () => { + const iter = gen().flatMap(async function*(x) { + yield x; + yield* [x + 1, x + 2]; + }); + + for (const expected of [1, 2, 3, 2, 3, 4]) { + const result = await iter.next(); + assertEq(result.value, expected); + assertEq(result.done, false); + } + + const result = await iter.next(); + assertEq(result.value, undefined); + assertEq(result.done, true); +})(); + +if (typeof reportCompare == 'function') + reportCompare(0, 0); |