%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
var fstream = require('../fstream.js') var tap = require('tap') var fs = require('fs') var path = require('path') var dir = path.dirname(__dirname) tap.test('reader test', function (t) { var children = -1 var gotReady = false var ended = false var r = fstream.Reader({ path: dir, filter: function () { // return this.parent === r return this.parent === r || this === r } }) r.on('ready', function () { gotReady = true children = fs.readdirSync(dir).length console.error('Setting expected children to ' + children) t.equal(r.type, 'Directory', 'should be a directory') }) r.on('entry', function (entry) { children-- if (!gotReady) { t.fail('children before ready!') } t.equal(entry.dirname, r.path, 'basename is parent dir') }) r.on('error', function (er) { t.fail(er) t.end() process.exit(1) }) r.on('end', function () { t.equal(children, 0, 'should have seen all children') ended = true }) var closed = false r.on('close', function () { t.ok(ended, 'saw end before close') t.notOk(closed, 'close should only happen once') closed = true t.end() }) }) tap.test('reader error test', function (t) { // assumes non-root on a *nix system var r = fstream.Reader({ path: '/root' }) r.once('error', function (er) { t.ok(true) t.end() }) r.on('end', function () { t.fail('reader ended without error') t.end() }) })