UNPKG

785 BJavaScriptView Raw
1
2
3var fs = require ('fs')
4 , join = require('path').join
5 , file = join(__dirname, 'fixtures','all_npm.json')
6 , JSONStream = require('../')
7 , it = require('it-is')
8
9function fn (s) {
10 return !isNaN(parseInt(s, 10))
11}
12
13var expected = JSON.parse(fs.readFileSync(file))
14 , parser = JSONStream.parse(['rows', fn])
15 , called = 0
16 , ended = false
17 , parsed = []
18
19fs.createReadStream(file).pipe(parser)
20
21parser.on('data', function (data) {
22 called ++
23 it.has({
24 id: it.typeof('string'),
25 value: {rev: it.typeof('string')},
26 key:it.typeof('string')
27 })
28 parsed.push(data)
29})
30
31parser.on('end', function () {
32 ended = true
33})
34
35process.on('exit', function () {
36 it(called).equal(expected.rows.length)
37 it(parsed).deepEqual(expected.rows)
38 console.error('PASSED')
39})