Skip to content

Commit

Permalink
test: verify fields in spawn{Sync} errors
Browse files Browse the repository at this point in the history
This commit validates the properties of ENOENT error objects
returned by spawn() and spawnSync().

PR-URL: #838
Reviewed-By: Ben Noordhuis <[email protected]>
Reviewed-By: Rod Vagg <[email protected]>
  • Loading branch information
cjihrig committed Feb 14, 2015
1 parent f029693 commit d53b636
Show file tree
Hide file tree
Showing 2 changed files with 13 additions and 3 deletions.
7 changes: 6 additions & 1 deletion test/parallel/test-child-process-spawn-error.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,11 +6,16 @@ var assert = require('assert');
var errors = 0;

var enoentPath = 'foo123';
var spawnargs = ['bar'];
assert.equal(common.fileExists(enoentPath), false);

var enoentChild = spawn(enoentPath);
var enoentChild = spawn(enoentPath, spawnargs);
enoentChild.on('error', function (err) {
assert.equal(err.code, 'ENOENT');
assert.equal(err.errno, 'ENOENT');
assert.equal(err.syscall, 'spawn ' + enoentPath);
assert.equal(err.path, enoentPath);
assert.deepEqual(err.spawnargs, spawnargs);
errors++;
});

Expand Down
9 changes: 7 additions & 2 deletions test/parallel/test-child-process-spawnsync.js
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,13 @@ console.log('sleep exited', stop);
assert.strictEqual(stop[0], 1, 'sleep should not take longer or less than 1 second');

// Error test when command does not exist
var ret_err = spawnSync('command_does_not_exist');
assert.strictEqual(ret_err.error.code, 'ENOENT');
var ret_err = spawnSync('command_does_not_exist', ['bar']).error;

assert.strictEqual(ret_err.code, 'ENOENT');
assert.strictEqual(ret_err.errno, 'ENOENT');
assert.strictEqual(ret_err.syscall, 'spawnSync command_does_not_exist');
assert.strictEqual(ret_err.path, 'command_does_not_exist');
assert.deepEqual(ret_err.spawnargs, ['bar']);

// Verify that the cwd option works - GH #7824
(function() {
Expand Down

0 comments on commit d53b636

Please sign in to comment.