File tree Expand file tree Collapse file tree 2 files changed +13
-11
lines changed Expand file tree Collapse file tree 2 files changed +13
-11
lines changed Original file line number Diff line number Diff line change @@ -13,6 +13,8 @@ const {
1313const { pipelineImpl : pl } = require ( 'internal/streams/pipeline' ) ;
1414const { finished } = require ( 'internal/streams/end-of-stream' ) ;
1515
16+ require ( 'stream' ) ;
17+
1618function pipeline ( ...streams ) {
1719 return new Promise ( ( resolve , reject ) => {
1820 let signal ;
Original file line number Diff line number Diff line change 1+ /* eslint-disable node-core/require-common-first, require-yield */
12'use strict' ;
2- const common = require ( '../common' ) ;
3- const assert = require ( 'assert' ) ;
43const { pipeline } = require ( 'node:stream/promises' ) ;
5-
64{
75 // Ensure that async iterators can act as readable and writable streams
86 async function * myCustomReadable ( ) {
97 yield 'Hello' ;
108 yield 'World' ;
119 }
1210
13- // eslint-disable-next-line require-yield
11+ const messages = [ ] ;
1412 async function * myCustomWritable ( stream ) {
15- const messages = [ ] ;
1613 for await ( const chunk of stream ) {
1714 messages . push ( chunk ) ;
1815 }
19- assert . deepStrictEqual ( messages , [ 'Hello' , 'World' ] ) ;
2016 }
2117
22- pipeline (
23- myCustomReadable ,
24- myCustomWritable ,
25- )
26- . then ( common . mustCall ( ) ) ;
18+ ( async ( ) => {
19+ await pipeline (
20+ myCustomReadable ,
21+ myCustomWritable ,
22+ ) ;
23+ // Importing here to avoid initializing streams
24+ require ( 'assert' ) . deepStrictEqual ( messages , [ 'Hello' , 'World' ] ) ;
25+ } ) ( )
26+ . then ( require ( '../common' ) . mustCall ( ) ) ;
2727}
You can’t perform that action at this time.
0 commit comments