Plato on Github
Report Home
node_modules/JSONStream/test/empty.js
Maintainability
81.25
Lines of code
44
Difficulty
16.03
Estimated Errors
0.39
Function weight
By Complexity
By SLOC
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()