Skip to content

Commit

Permalink
test: fix test-debugger-pid
Browse files Browse the repository at this point in the history
The current format that prints the process PID before the actual
message.

Adapt the test so it also passes on Windows, that emits a different
message from the rest of platforms.

Move the test to parallel.

PR-URL: #6584
Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl>
Reviewed-By: Rich Trott <rtrott@gmail.com>
  • Loading branch information
santigimeno authored and evanlucas committed May 17, 2016
1 parent d740624 commit 577e132
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 32 deletions.
32 changes: 0 additions & 32 deletions test/debugger/test-debugger-pid.js

This file was deleted.

54 changes: 54 additions & 0 deletions test/parallel/test-debugger-pid.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
'use strict';
const common = require('../common');
const assert = require('assert');
const spawn = require('child_process').spawn;

var buffer = '';

// connect to debug agent
var interfacer = spawn(process.execPath, ['debug', '-p', '655555']);

console.error(process.execPath, 'debug', '-p', '655555');
interfacer.stdout.setEncoding('utf-8');
interfacer.stderr.setEncoding('utf-8');
var onData = function(data) {
data = (buffer + data).split('\n');
buffer = data.pop();
data.forEach(function(line) {
interfacer.emit('line', line);
});
};
interfacer.stdout.on('data', onData);
interfacer.stderr.on('data', onData);

var lineCount = 0;
interfacer.on('line', function(line) {
var expected;
const pid = interfacer.pid;
if (common.isWindows) {
switch (++lineCount) {
case 1:
line = line.replace(/^(debug> *)+/, '');
var msg = 'There was an internal error in Node\'s debugger. ' +
'Please report this bug.';
expected = `(node:${pid}) ${msg}`;
break;

case 2:
expected = 'The parameter is incorrect.';
break;

default:
return;
}
} else {
line = line.replace(/^(debug> *)+/, '');
expected = `(node:${pid}) Target process: 655555 doesn\'t exist.`;
}

assert.strictEqual(expected, line);
});

interfacer.on('exit', function(code, signal) {
assert.ok(code == 1, 'Got unexpected code: ' + code);
});

0 comments on commit 577e132

Please sign in to comment.