blob: bd81ec0cbbe3571eb0f1b91c3ef171d65fcdb587 [file] [log] [blame]
var shell = require('..');
var assert = require('assert'),
child = require('child_process');
function numLines(str) {
return typeof str === 'string' ? str.match(/\n/g).length : 0;
}
//
// config.silent
//
assert.equal(shell.config.silent, false); // default
shell.config.silent = true;
assert.equal(shell.config.silent, true);
shell.config.silent = false;
assert.equal(shell.config.silent, false);
//
// config.fatal
//
assert.equal(shell.config.fatal, false); // default
//
// config.fatal = false
//
shell.mkdir('-p', 'tmp');
var file = 'tmp/tempscript'+Math.random()+'.js',
script = 'require(\'../../global.js\'); config.silent=true; config.fatal=false; cp("this_file_doesnt_exist", "."); echo("got here");';
script.to(file);
child.exec('node '+file, function(err, stdout, stderr) {
assert.ok(stdout.match('got here'));
//
// config.fatal = true
//
shell.mkdir('-p', 'tmp');
var file = 'tmp/tempscript'+Math.random()+'.js',
script = 'require(\'../../global.js\'); config.silent=true; config.fatal=true; cp("this_file_doesnt_exist", "."); echo("got here");';
script.to(file);
child.exec('node '+file, function(err, stdout, stderr) {
assert.ok(!stdout.match('got here'));
shell.exit(123);
});
});