summaryrefslogtreecommitdiff
path: root/test/parallel/test-child-process-exit-code.js
blob: 0ccbb46a91562c16d463a70faa101694fda456f7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
'use strict';
var common = require('../common');
var assert = require('assert');
var spawn = require('child_process').spawn;
var path = require('path');

var exits = 0;

var exitScript = path.join(common.fixturesDir, 'exit.js');
var exitChild = spawn(process.argv[0], [exitScript, 23]);
exitChild.on('exit', function(code, signal) {
  assert.strictEqual(code, 23);
  assert.strictEqual(signal, null);

  exits++;
});


var errorScript = path.join(common.fixturesDir,
                            'child_process_should_emit_error.js');
var errorChild = spawn(process.argv[0], [errorScript]);
errorChild.on('exit', function(code, signal) {
  assert.ok(code !== 0);
  assert.strictEqual(signal, null);

  exits++;
});


process.on('exit', function() {
  assert.equal(2, exits);
});