Merge remote-tracking branch 'iapain/exec-options-fix'

Conflicts:
	shell.js
This commit is contained in:
Artur 2013-04-06 09:05:30 -04:00
Родитель 1604a3933d 7b9ee5a41d
Коммит f7d2e3c188
2 изменённых файлов: 16 добавлений и 1 удалений

Просмотреть файл

@ -1095,11 +1095,17 @@ function _exec(command, options, callback) {
if (!command)
error('must specify command');
// Callback is defined instead of options.
if (typeof options === 'function') {
callback = options;
options = { async: true };
}
// Callback is defined with options.
if (typeof options === 'object' && typeof callback === 'function') {
options.async = true;
}
options = extend({
silent: config.silent,
async: false

Просмотреть файл

@ -91,7 +91,16 @@ shell.exec('node -e \"console.log(5678);\"', function(code, output) {
assert.equal(code, 0);
assert.ok(output === '5566\n' || output === '5566\nundefined\n'); // 'undefined' for v0.4
shell.exit(123);
//
// callback as 3rd argument (slient:true)
//
shell.exec('node -e \"console.log(5678);\"', {silent:true}, function(code, output) {
assert.equal(code, 0);
assert.ok(output === '5678\n' || output === '5678\nundefined\n'); // 'undefined' for v0.4
shell.exit(123);
});
});