Audit file/directory properties and content
- Declare expectations with chaining. Stop at first failure.
- Expectations:
exists
,hasFile
,hasDir
,minSize
,minCount
,maxCount
,created
,modified
. refute
API for negating any expectation.- Call any
shelljs
method or use wrappers likehasFile()
. - Available as a grunt task.
var audit = new auditFs.create();
audit
.set('dir', '/path/to/dir'); // Target directory
.hasFile('README.md')
.refute.grep('console.log', 'lib/**/*.js');
if (audit.pass()) {
// Expectations met
} else {
var rule = audit.last();
console.log(
'failed because rule %s with args %s returned %s',
rule.name, JSON.stringify(rule.args), JSON.stringify(rule.res)
);
}
Use _() to run any ShellJS method.
audit._('test', '-L', 'mySymLink');
audit.refute._('test', '-L', 'mySymLink');
assert() and refute() receive an OuterShelljs instance, shelljs
.
audit.assert('should ...', function(shelljs) {
var result = false;
// ...
return result;
});
audit.refute('should ...', function(shelljs) {
var result = false;
// ...
return result;
});
npm install audit-fs
MIT
npm test