audit-shelljs

Audit directory properties/content with ShellJS

audit-shelljs

Audit directory properties/content with ShellJS.

  • Declare expectations with chaining. Stop at first failure.
  • refute API for negating any expectation.
  • Call any shelljs method or use wrappers like hasFile().

var audit = new auditShelljs.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

npm install audit-shelljs

Documentation

MIT

npm test