1var JSONStream = require('../') 2 , stream = require('stream') 3 , it = require('it-is') 4 5var output = [ [], [] ] 6 7var parser1 = JSONStream.parse(['docs', /./]) 8parser1.on('data', function(data) { 9 output[0].push(data) 10}) 11 12var parser2 = JSONStream.parse(['docs', /./]) 13parser2.on('data', function(data) { 14 output[1].push(data) 15}) 16 17var pending = 2 18function onend () { 19 if (--pending > 0) return 20 it(output).deepEqual([ 21 [], [{hello: 'world'}] 22 ]) 23 console.error('PASSED') 24} 25parser1.on('end', onend) 26parser2.on('end', onend) 27 28function makeReadableStream() { 29 var readStream = new stream.Stream() 30 readStream.readable = true 31 readStream.write = function (data) { this.emit('data', data) } 32 readStream.end = function (data) { this.emit('end') } 33 return readStream 34} 35 36var emptyArray = makeReadableStream() 37emptyArray.pipe(parser1) 38emptyArray.write('{"docs":[]}') 39emptyArray.end() 40 41var objectArray = makeReadableStream() 42objectArray.pipe(parser2) 43objectArray.write('{"docs":[{"hello":"world"}]}') 44objectArray.end() 45