custom_fs.js
878 Bytes
var test = require('tape'),
_fs = require('fs'),
walkdir = require('../walkdir.js');
var expectedPaths = {};
test('fs option',function(t){
var paths = [];
var emitter = walkdir(__dirname+'/dir/foo',{fs:
{
readdir: function () {
var cb = arguments[arguments.length - 1];
cb(null, []);
},
lstat: function (file) {
var cb = arguments[arguments.length - 1];
return _fs.lstat(__dirname, cb);
}
}
},function(path,stat,depth){
t.fail('there should be no files emitted');
});
emitter.on('end',function(){
var expected = Object.keys(expectedPaths);
t.ok(expected.length == paths.length, 'expected and emitted paths should have the same length');
paths.forEach(function(v){
t.ok(expected.indexOf(v) > -1,'all expected files should be in paths');
});
t.end();
});
});