readdir.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. var testCase = require('nodeunit').testCase;
  2. var fs = require('fs');
  3. var wrench = require('../lib/wrench');
  4. var path = require('path');
  5. function checkResult(test, files) {
  6. var check = [
  7. 'bar.txt',
  8. 'foo',
  9. path.join('foo', 'bar'),
  10. path.join('foo', 'dolor.md'),
  11. path.join('foo', 'lorem.txt'),
  12. path.join('foo', 'bar', 'ipsum.js')
  13. ];
  14. test.deepEqual(files, check);
  15. test.done();
  16. }
  17. module.exports = testCase({
  18. test_readdirSyncRecursive: function(test) {
  19. var dir = path.join(__dirname, 'readdir');
  20. test.ok(path.existsSync(dir), 'Folders should exist');
  21. var files = wrench.readdirSyncRecursive(dir);
  22. checkResult(test, files);
  23. },
  24. test_readdirRecursive: function(test) {
  25. var dir = path.join(__dirname, 'readdir');
  26. test.ok(path.existsSync(dir), 'Folders should exist');
  27. var allFiles = [];
  28. wrench.readdirRecursive(dir, function(e, files) {
  29. if (e) throw e;
  30. if (files) {
  31. allFiles = allFiles.concat(files);
  32. } else {
  33. checkResult(test, allFiles);
  34. }
  35. });
  36. }
  37. });
  38. // vim: et ts=4 sw=4