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