diff options
Diffstat (limited to 'js/src/tests/test262/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js')
-rw-r--r-- | js/src/tests/test262/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/js/src/tests/test262/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js b/js/src/tests/test262/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js new file mode 100644 index 0000000000..ecba51e39c --- /dev/null +++ b/js/src/tests/test262/built-ins/AsyncFromSyncIteratorPrototype/next/absent-value-not-passed.js @@ -0,0 +1,38 @@ +// |reftest| async +// Copyright (C) 2020 Alexey Shvayka. All rights reserved. +// This code is governed by the BSD license found in the LICENSE file. + +/*--- +esid: sec-%asyncfromsynciteratorprototype%.next +description: > + `next` method does not pass absent `value`. +info: | + %AsyncFromSyncIteratorPrototype%.next ( value ) + + [...] + 5. If value is present, then + [...] + 6. Else, + a. Let result be IteratorNext(syncIteratorRecord). + [...] +flags: [async] +features: [async-iteration] +includes: [asyncHelpers.js] +---*/ + +var nextArgumentsLength; +var syncIterator = { + [Symbol.iterator]() { + return this; + }, + next() { + nextArgumentsLength = arguments.length; + return {done: true}; + }, +}; + +asyncTest(async function () { + for await (let _ of syncIterator); + + assert.sameValue(nextArgumentsLength, 0); +}); |