diff options
author | Julien Fontanet <julien.fontanet@isonoe.net> | 2018-04-26 11:53:23 +0200 |
---|---|---|
committer | Ruben Bridgewater <ruben@bridgewater.de> | 2018-04-29 17:22:48 +0200 |
commit | 9c48926dba20a507968d4152fafa9d51d69cf970 (patch) | |
tree | e43773d94b2394948fc2e0a130bc5b4c39dea68e /test/parallel/test-stream-readable-async-iterators.js | |
parent | a9051bb2c32f30dc6f715bed593765b257ba1a48 (diff) | |
download | android-node-v8-9c48926dba20a507968d4152fafa9d51d69cf970.tar.gz android-node-v8-9c48926dba20a507968d4152fafa9d51d69cf970.tar.bz2 android-node-v8-9c48926dba20a507968d4152fafa9d51d69cf970.zip |
stream: fix error handling with async iteration
Fix an issue when an error was emitted by the stream before
`iterator.next()` is called.
PR-URL: https://github.com/nodejs/node/pull/20329
Reviewed-By: Benjamin Gruenbaum <benjamingr@gmail.com>
Reviewed-By: Tiancheng "Timothy" Gu <timothygu99@gmail.com>
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Anatoli Papirovski <apapirovski@mac.com>
Diffstat (limited to 'test/parallel/test-stream-readable-async-iterators.js')
-rw-r--r-- | test/parallel/test-stream-readable-async-iterators.js | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/test/parallel/test-stream-readable-async-iterators.js b/test/parallel/test-stream-readable-async-iterators.js index b1801a1db3..39761b4132 100644 --- a/test/parallel/test-stream-readable-async-iterators.js +++ b/test/parallel/test-stream-readable-async-iterators.js @@ -116,6 +116,18 @@ async function tests() { })(); await (async function() { + console.log('call next() after error'); + const readable = new Readable({ + read() {} + }); + const iterator = readable[Symbol.asyncIterator](); + + const err = new Error('kaboom'); + readable.destroy(new Error('kaboom')); + await assert.rejects(iterator.next.bind(iterator), err); + })(); + + await (async function() { console.log('read object mode'); const max = 42; let readed = 0; |