75 lines
2.8 KiB
JavaScript
75 lines
2.8 KiB
JavaScript
|
var testCase = require('nodeunit').testCase;
|
||
|
var fs = require('fs');
|
||
|
var wrench = require('../lib/wrench');
|
||
|
var path = require('path');
|
||
|
|
||
|
module.exports = testCase({
|
||
|
test_rmdirSyncRecursive: function(test) {
|
||
|
var dir = __dirname + '/_tmp2/foo/bar';
|
||
|
|
||
|
wrench.mkdirSyncRecursive(dir, '777');
|
||
|
|
||
|
var f1Path = path.join(dir, 'test1.txt');
|
||
|
var f2Path = path.join(path.dirname(dir), 'test2.txt');
|
||
|
var f3Path = path.join(path.dirname(path.dirname(dir)), 'test3.txt');
|
||
|
|
||
|
fs.writeFileSync(f1Path, 'foo bar baz');
|
||
|
fs.writeFileSync(f2Path, 'foo bar baz');
|
||
|
fs.writeFileSync(f3Path, 'foo bar baz');
|
||
|
|
||
|
fs.chmodSync(f1Path, '444');
|
||
|
fs.chmodSync(f2Path, '444');
|
||
|
fs.chmodSync(f3Path, '444');
|
||
|
|
||
|
test.equals(fs.existsSync(dir), true, 'Dir should exist - mkdirSyncRecursive not working?');
|
||
|
test.equals(fs.existsSync(f1Path), true, 'File should exist');
|
||
|
test.equals(fs.existsSync(f2Path), true, 'File should exist');
|
||
|
test.equals(fs.existsSync(f3Path), true, 'File should exist');
|
||
|
|
||
|
wrench.rmdirSyncRecursive(dir);
|
||
|
|
||
|
test.equals(fs.existsSync(dir), false, 'Dir should not exist now...');
|
||
|
test.equals(fs.existsSync(f1Path), false, 'File should not exist');
|
||
|
test.equals(fs.existsSync(f2Path), true, 'File should exist');
|
||
|
test.equals(fs.existsSync(f3Path), true, 'File should exist');
|
||
|
|
||
|
wrench.rmdirSyncRecursive(path.dirname(path.dirname(dir)));
|
||
|
|
||
|
test.done();
|
||
|
},
|
||
|
|
||
|
test_rmdirSyncRecursiveFromRoot: function(test) {
|
||
|
var dir = __dirname + '/_tmp3/foo/bar';
|
||
|
|
||
|
wrench.mkdirSyncRecursive(dir, '777');
|
||
|
|
||
|
var f1Path = path.join(dir, 'test1.txt');
|
||
|
var f2Path = path.join(path.dirname(dir), 'test2.txt');
|
||
|
var f3Path = path.join(path.dirname(path.dirname(dir)), 'test3.txt');
|
||
|
|
||
|
fs.writeFileSync(f1Path, 'foo bar baz');
|
||
|
fs.writeFileSync(f2Path, 'foo bar baz');
|
||
|
fs.writeFileSync(f3Path, 'foo bar baz');
|
||
|
|
||
|
fs.chmodSync(f1Path, '444');
|
||
|
fs.chmodSync(f2Path, '444');
|
||
|
fs.chmodSync(f3Path, '444');
|
||
|
|
||
|
test.equals(fs.existsSync(dir), true, 'Dir should exist - mkdirSyncRecursive not working?');
|
||
|
test.equals(fs.existsSync(f1Path), true, 'File should exist');
|
||
|
test.equals(fs.existsSync(f2Path), true, 'File should exist');
|
||
|
test.equals(fs.existsSync(f3Path), true, 'File should exist');
|
||
|
|
||
|
wrench.rmdirSyncRecursive(path.dirname(path.dirname(dir)));
|
||
|
|
||
|
test.equals(fs.existsSync(dir), false, 'Dir should not exist now...');
|
||
|
test.equals(fs.existsSync(f1Path), false, 'File should not exist');
|
||
|
test.equals(fs.existsSync(f2Path), false, 'File should not exist');
|
||
|
test.equals(fs.existsSync(f3Path), false, 'File should not exist');
|
||
|
|
||
|
test.done();
|
||
|
}
|
||
|
});
|
||
|
|
||
|
// vim: et ts=4 sw=4
|