HEX
Server: Apache/2.4.52 (Ubuntu)
System: Linux spn-python 5.15.0-89-generic #99-Ubuntu SMP Mon Oct 30 20:42:41 UTC 2023 x86_64
User: arjun (1000)
PHP: 8.1.2-1ubuntu2.20
Disabled: NONE
Upload Files
File: //home/arjun/projects/buyercall_forms/buyercall/node_modules/JSONStream/test/empty.js
var JSONStream = require('../')
  , stream = require('stream')
  , it = require('it-is')

var output = [ [], [] ]

var parser1 = JSONStream.parse(['docs', /./])
parser1.on('data', function(data) {
  output[0].push(data)
})

var parser2 = JSONStream.parse(['docs', /./])
parser2.on('data', function(data) {
  output[1].push(data)
})

var pending = 2
function onend () {
  if (--pending > 0) return
  it(output).deepEqual([
    [], [{hello: 'world'}]
  ])
  console.error('PASSED')
}
parser1.on('end', onend)
parser2.on('end', onend)

function makeReadableStream() {
  var readStream = new stream.Stream()
  readStream.readable = true
  readStream.write = function (data) { this.emit('data', data) }
  readStream.end = function (data) { this.emit('end') }
  return readStream
}

var emptyArray = makeReadableStream()
emptyArray.pipe(parser1)
emptyArray.write('{"docs":[]}')
emptyArray.end()

var objectArray = makeReadableStream()
objectArray.pipe(parser2)
objectArray.write('{"docs":[{"hello":"world"}]}')
objectArray.end()