summaryrefslogtreecommitdiff
path: root/deps/node-inspect/test
diff options
context:
space:
mode:
authorJan Krems <jan.krems@groupon.com>2018-01-24 10:42:54 -0800
committerRuben Bridgewater <ruben@bridgewater.de>2018-02-01 13:39:40 +0100
commit02b3bbc5e20e0d663c9e16d1617d78af10950905 (patch)
tree3a5a145e1190b646f3ce7bb8c1f2c8c34f5383f5 /deps/node-inspect/test
parent7ff4888ed2d99a7ea412b3dee46286a8754956c4 (diff)
downloadandroid-node-v8-02b3bbc5e20e0d663c9e16d1617d78af10950905.tar.gz
android-node-v8-02b3bbc5e20e0d663c9e16d1617d78af10950905.tar.bz2
android-node-v8-02b3bbc5e20e0d663c9e16d1617d78af10950905.zip
deps: update node-inspect to 1.11.3
Highlights: * Using a random port works (`node inspect --port=0 script.js`) * `takeHeapSnapshot()` creates valid snapshots again PR-URL: https://github.com/nodejs/node/pull/18354 Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Diffstat (limited to 'deps/node-inspect/test')
-rw-r--r--deps/node-inspect/test/cli/break.test.js4
-rw-r--r--deps/node-inspect/test/cli/heap-profiler.test.js34
-rw-r--r--deps/node-inspect/test/cli/launch.test.js40
-rw-r--r--deps/node-inspect/test/cli/start-cli.js4
4 files changed, 78 insertions, 4 deletions
diff --git a/deps/node-inspect/test/cli/break.test.js b/deps/node-inspect/test/cli/break.test.js
index 59b12cde38..ce8c8d6d7d 100644
--- a/deps/node-inspect/test/cli/break.test.js
+++ b/deps/node-inspect/test/cli/break.test.js
@@ -134,7 +134,7 @@ test('sb before loading file', (t) => {
return cli.waitForInitialBreak()
.then(() => cli.waitForPrompt())
- .then(() => cli.command('sb("other.js", 3)'))
+ .then(() => cli.command('sb("other.js", 2)'))
.then(() => {
t.match(
cli.output,
@@ -145,7 +145,7 @@ test('sb before loading file', (t) => {
.then(() => {
t.match(
cli.output,
- `break in ${otherScript}:3`,
+ `break in ${otherScript}:2`,
'found breakpoint in file that was not loaded yet');
})
.then(() => cli.quit())
diff --git a/deps/node-inspect/test/cli/heap-profiler.test.js b/deps/node-inspect/test/cli/heap-profiler.test.js
new file mode 100644
index 0000000000..ebd734e03c
--- /dev/null
+++ b/deps/node-inspect/test/cli/heap-profiler.test.js
@@ -0,0 +1,34 @@
+'use strict';
+const { test } = require('tap');
+const { readFileSync, unlinkSync } = require('fs');
+
+const startCLI = require('./start-cli');
+const filename = 'node.heapsnapshot';
+
+function cleanup() {
+ try {
+ unlinkSync(filename);
+ } catch (_) {
+ // Ignore.
+ }
+}
+
+cleanup();
+
+test('Heap profiler take snapshot', (t) => {
+ const cli = startCLI(['examples/empty.js']);
+
+ function onFatal(error) {
+ cli.quit();
+ throw error;
+ }
+
+ // Check that the snapshot is valid JSON.
+ return cli.waitForInitialBreak()
+ .then(() => cli.waitForPrompt())
+ .then(() => cli.command('takeHeapSnapshot()'))
+ .then(() => JSON.parse(readFileSync(filename, 'utf8')))
+ .then(() => cleanup())
+ .then(() => cli.quit())
+ .then(null, onFatal);
+});
diff --git a/deps/node-inspect/test/cli/launch.test.js b/deps/node-inspect/test/cli/launch.test.js
index f7efc6eb3f..8808d47a08 100644
--- a/deps/node-inspect/test/cli/launch.test.js
+++ b/deps/node-inspect/test/cli/launch.test.js
@@ -26,6 +26,46 @@ test('custom port', (t) => {
});
});
+test('random port', (t) => {
+ const script = Path.join('examples', 'three-lines.js');
+
+ const cli = startCLI(['--port=0', script]);
+
+ return cli.waitForInitialBreak()
+ .then(() => cli.waitForPrompt())
+ .then(() => {
+ t.match(cli.output, 'debug>', 'prints a prompt');
+ t.match(
+ cli.output,
+ /< Debugger listening on /,
+ 'forwards child output');
+ })
+ .then(() => cli.quit())
+ .then((code) => {
+ t.equal(code, 0, 'exits with success');
+ });
+});
+
+test('random port with --inspect-port=0', (t) => {
+ const script = Path.join('examples', 'three-lines.js');
+
+ const cli = startCLI([script], ['--inspect-port=0']);
+
+ return cli.waitForInitialBreak()
+ .then(() => cli.waitForPrompt())
+ .then(() => {
+ t.match(cli.output, 'debug>', 'prints a prompt');
+ t.match(
+ cli.output,
+ /< Debugger listening on /,
+ 'forwards child output');
+ })
+ .then(() => cli.quit())
+ .then((code) => {
+ t.equal(code, 0, 'exits with success');
+ });
+});
+
test('examples/three-lines.js', (t) => {
const script = Path.join('examples', 'three-lines.js');
const cli = startCLI([script]);
diff --git a/deps/node-inspect/test/cli/start-cli.js b/deps/node-inspect/test/cli/start-cli.js
index ae904308e0..b086dcd8ba 100644
--- a/deps/node-inspect/test/cli/start-cli.js
+++ b/deps/node-inspect/test/cli/start-cli.js
@@ -16,8 +16,8 @@ const BREAK_MESSAGE = new RegExp('(?:' + [
'exception', 'other', 'promiseRejection',
].join('|') + ') in', 'i');
-function startCLI(args) {
- const child = spawn(process.execPath, [CLI, ...args]);
+function startCLI(args, flags = []) {
+ const child = spawn(process.execPath, [...flags, CLI, ...args]);
let isFirstStdoutChunk = true;
const outputBuffer = [];