mirror of https://github.com/lukechilds/node.git
Browse Source
When using `iojs debug -p <pid>` with an invalid pid, the debugger printed an internal error message because it wasn't smart enough to figure out that the target process didn't exist. Now it is. PR-URL: https://github.com/nodejs/io.js/pull/1863 Reviewed-By: Ben Noordhuis <info@bnoordhuis.nl> Reviewed-By: Fedor Indutny <fedor@indutny.com> Reviewed-By: Jeremiah Senkpiel <fishrock123@rocketmail.com> Reviewed-By: Yosuke Furukawa <yosuke.furukawa@gmail.com>v2.3.1-release
Jackson Tian
10 years ago
committed by
Ben Noordhuis
2 changed files with 51 additions and 3 deletions
@ -0,0 +1,39 @@ |
|||||
|
'use strict'; |
||||
|
var common = require('../common'); |
||||
|
var assert = require('assert'); |
||||
|
var spawn = require('child_process').spawn; |
||||
|
|
||||
|
var port = common.PORT + 1337; |
||||
|
var buffer = ''; |
||||
|
var expected = []; |
||||
|
var scriptToDebug = common.fixturesDir + '/empty.js'; |
||||
|
|
||||
|
function fail() { |
||||
|
assert(0); // `--debug-brk script.js` should not quit
|
||||
|
} |
||||
|
|
||||
|
// 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); |
||||
|
|
||||
|
interfacer.on('line', function(line) { |
||||
|
line = line.replace(/^(debug> *)+/, ''); |
||||
|
var expected = 'Target process: 655555 doesn\'t exist.'; |
||||
|
assert.ok(expected == line, 'Got unexpected line: ' + line); |
||||
|
}); |
||||
|
|
||||
|
interfacer.on('exit', function(code, signal) { |
||||
|
assert.ok(code == 1, 'Got unexpected code: ' + code); |
||||
|
}); |
Loading…
Reference in new issue