35 lines
878 B
JavaScript
35 lines
878 B
JavaScript
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();
|
|
});
|
|
});
|