Built motion from commit 6a09e18b.|2.6.11
[motion2.git] / legacy-libs / walkdir / test / max_depth.js
diff --git a/legacy-libs/walkdir/test/max_depth.js b/legacy-libs/walkdir/test/max_depth.js
new file mode 100644 (file)
index 0000000..76e83de
--- /dev/null
@@ -0,0 +1,30 @@
+var test = require('tape'),
+walkdir = require('../walkdir.js');
+
+var expectedPaths = {
+'dir/foo/x':'file',
+'dir/foo/a':'dir',
+'dir/foo/a/y':'file',
+'dir/foo/a/b':'dir'
+};
+
+test('no_recurse option',function(t){
+  var paths = [];
+
+  var emitter = walkdir(__dirname+'/dir/foo',{max_depth:2},function(path,stat,depth){
+    paths.push(path.replace(__dirname+'/',''));
+    t.ok(depth < 3,' all paths emitted should have a depth less than 3');
+  });
+
+  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,'paths should not have any unexpected files');
+     });
+
+     t.end();
+  });
+});