mirror of
https://github.com/nodejs/node.git
synced 2024-11-21 21:19:50 +01:00
36bcc2925f
PR-URL: https://github.com/nodejs/node/pull/39357 Refs: https://github.com/nodejs/node-inspect/pull/93 Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
55 lines
1.6 KiB
JavaScript
55 lines
1.6 KiB
JavaScript
'use strict';
|
|
|
|
const common = require('../common');
|
|
common.skipIfInspectorDisabled();
|
|
|
|
const assert = require('assert');
|
|
const childProcess = require('child_process');
|
|
const http = require('http');
|
|
|
|
let port;
|
|
|
|
const server = http.createServer(common.mustCall((req, res) => {
|
|
if (req.url.startsWith('/json')) {
|
|
res.writeHead(200);
|
|
res.end(`[ {
|
|
"description": "",
|
|
"devtoolsFrontendUrl": "/devtools/inspector.html?ws=localhost:${port}/devtools/page/DAB7FB6187B554E10B0BD18821265734",
|
|
"cid": "DAB7FB6187B554E10B0BD18821265734",
|
|
"title": "Fhqwhgads",
|
|
"type": "page",
|
|
"url": "https://www.example.com/",
|
|
"webSocketDebuggerUrl": "ws://localhost:${port}/devtools/page/DAB7FB6187B554E10B0BD18821265734"
|
|
} ]`);
|
|
} else {
|
|
res.setHeader('Upgrade', 'websocket');
|
|
res.setHeader('Connection', 'Upgrade');
|
|
res.setHeader('Sec-WebSocket-Accept', 'fhqwhgads');
|
|
res.setHeader('Sec-WebSocket-Protocol', 'chat');
|
|
res.writeHead(101);
|
|
res.end();
|
|
}
|
|
}, 2)).listen(0, common.mustCall(() => {
|
|
port = server.address().port;
|
|
const proc =
|
|
childProcess.spawn(process.execPath, ['inspect', `localhost:${port}`]);
|
|
|
|
let stdout = '';
|
|
proc.stdout.on('data', (data) => {
|
|
stdout += data.toString();
|
|
assert.doesNotMatch(stdout, /\bok\b/);
|
|
});
|
|
|
|
let stderr = '';
|
|
proc.stderr.on('data', (data) => {
|
|
stderr += data.toString();
|
|
});
|
|
|
|
proc.on('exit', common.mustCall((code, signal) => {
|
|
assert.match(stderr, /\bWebSocket secret mismatch\b/);
|
|
assert.notStrictEqual(code, 0);
|
|
assert.strictEqual(signal, null);
|
|
server.close();
|
|
}));
|
|
}));
|