summaryrefslogtreecommitdiff
path: root/test/parallel/test-child-process-exec-buffer.js
blob: b680e3b3c1ee5a3e229498ad792d7d94ac7689a0 (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
require('../common');
var assert = require('assert');
var exec = require('child_process').exec;
var os = require('os');

var success_count = 0;

var str = 'hello';

// default encoding
var child = exec("echo " + str, function(err, stdout, stderr) {
  assert.ok('string', typeof(stdout), 'Expected stdout to be a string');
  assert.ok('string', typeof(stderr), 'Expected stderr to be a string');
  assert.equal(str + os.EOL, stdout);

  success_count++;
});

// no encoding (Buffers expected)
var child = exec("echo " + str, {
  encoding: null
}, function(err, stdout, stderr) {
  assert.ok(stdout instanceof Buffer, 'Expected stdout to be a Buffer');
  assert.ok(stderr instanceof Buffer, 'Expected stderr to be a Buffer');
  assert.equal(str + os.EOL, stdout.toString());

  success_count++;
});

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