• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1'use strict';
2const common = require('../common');
3if (!common.hasCrypto)
4  common.skip('missing crypto');
5
6const assert = require('assert');
7const spawn = require('child_process').spawn;
8
9const child = spawn(process.execPath, ['debug']);
10child.stderr.setEncoding('utf8');
11
12const expectedLines = [
13  /^\(node:\d+\) \[DEP0068\] DeprecationWarning:/,
14  /Usage: .*node.* debug script\.js\r?\n       .*node.* debug <host>:<port>\r?\n       .*node.* debug --port=<port>\r?\n       .*node.* debug -p <pid>\r?\n$/,
15];
16
17let actualUsageMessage = '';
18child.stderr.on('data', function(data) {
19  actualUsageMessage += data.toString();
20});
21
22child.on('exit', common.mustCall(function(code) {
23  assert.strictEqual(code, 1);
24  for (let i = 0; i < expectedLines.length; i++)
25    assert.ok(
26      expectedLines[i].test(actualUsageMessage),
27      `${actualUsageMessage} did not match ${expectedLines[i]}`
28    );
29}));
30