async-iterator.any.html
Details
- Test
/streams/readable-streams/async-iterator.any.html- Harness
- OK
Subtests
| Status | Subtest |
|---|---|
| FAIL | Async iterator instances should have the correct list of properties assert_array_equals: should have all the correct methods lengths differ, expected array ["next", "return"] length 2, got ["constructor", "next", "return"] length 3 |
| PASS | Async-iterating a push source |
| PASS | Async-iterating a pull source |
| PASS | Async-iterating a push source with undefined values |
| PASS | Async-iterating a pull source with undefined values |
| PASS | Async-iterating a pull source manually |
| PASS | Async-iterating an errored stream throws |
| PASS | Async-iterating a closed stream never executes the loop body, but works fine |
| PASS | Async-iterating an empty but not closed/errored stream never executes the loop body and stalls the async function |
| PASS | Async-iterating a partially consumed stream |
| PASS | Cancellation behavior when throwing inside loop body; preventCancel = false |
| PASS | Cancellation behavior when throwing inside loop body; preventCancel = true |
| PASS | Cancellation behavior when breaking inside loop body; preventCancel = false |
| PASS | Cancellation behavior when breaking inside loop body; preventCancel = true |
| PASS | Cancellation behavior when returning inside loop body; preventCancel = false |
| PASS | Cancellation behavior when returning inside loop body; preventCancel = true |
| PASS | Cancellation behavior when manually calling return(); preventCancel = false |
| PASS | Cancellation behavior when manually calling return(); preventCancel = true |
| PASS | next() rejects if the stream errors |
| PASS | return() does not rejects if the stream has not errored yet |
| PASS | return() rejects if the stream has errored |
| FAIL | next() that succeeds; next() that reports an error; next() promise_test: Unhandled rejection with value: object "Error: error1" |
| FAIL | next() that succeeds; next() that reports an error(); next() [no awaiting] assert_equals: 3rd next() promise status expected "fulfilled" but got "rejected" |
| FAIL | next() that succeeds; next() that reports an error(); return() promise_test: Unhandled rejection with value: object "Error: error1" |
| FAIL | next() that succeeds; next() that reports an error(); return() [no awaiting] assert_equals: return() promise status expected "fulfilled" but got "rejected" |
| FAIL | next() that succeeds; return() assert_equals: expected 2 but got 1 |
| FAIL | next() that succeeds; return() [no awaiting] assert_equals: expected 2 but got 1 |
| PASS | return(); next() |
| FAIL | return(); next() [no awaiting] assert_array_equals: next() resolves after return() expected property 0 to be "return" but got "next" (expected array ["return", "next"] got ["next", "return"]) |
| PASS | return(); next() with delayed cancel() |
| FAIL | return(); next() with delayed cancel() [no awaiting] assert_array_equals: next() should resolve after return() resolves expected property 0 to be "return" but got "next" (expected array ["return", "next"] got ["next", "return"]) |
| PASS | return(); return() |
| FAIL | return(); return() [no awaiting] assert_array_equals: 2nd return() resolves after 1st return() expected property 0 to be "return 1" but got "return 2" (expected array ["return 1", "return 2"] got ["return 2", "return 1"]) |
| PASS | values() throws if there's already a lock |
| PASS | Acquiring a reader after exhaustively async-iterating a stream |
| PASS | Acquiring a reader after return()ing from a stream that errors |
| PASS | Acquiring a reader after partially async-iterating a stream |
| PASS | Acquiring a reader and reading the remaining chunks after partially async-iterating a stream with preventCancel = true |
| PASS | return() should unlock the stream synchronously when preventCancel = false |
| PASS | return() should unlock the stream synchronously when preventCancel = true |
| PASS | close() while next() is pending |