Skip to content

Commit 211433f

Browse files
committed
tests: fix inspector uri-encoded paths
1 parent 24ded11 commit 211433f

File tree

5 files changed

+70
-4
lines changed

5 files changed

+70
-4
lines changed

test/common/inspector-helper.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ class InspectorSession {
175175
this._scriptsIdsByUrl.set(scriptId, url);
176176
const fileUrl = url.startsWith('file:') ?
177177
url : pathToFileURL(url).toString();
178-
if (fileUrl === this.scriptURL().toString()) {
178+
if (decodeURIComponent(fileUrl) === decodeURIComponent(this.scriptURL().toString())) {
179179
this.mainScriptId = scriptId;
180180
}
181181
}

test/parallel/test-inspector-async-context-brk.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ async function test() {
3535
await new Promise((resolve, reject) => {
3636
session.post('Debugger.setBreakpointByUrl', {
3737
'lineNumber': 22,
38-
'url': pathToFileURL(path.resolve(__dirname, __filename)).toString(),
38+
'url': decodeURIComponent(pathToFileURL(path.resolve(__dirname, __filename)).toString()),
3939
'columnNumber': 0,
4040
'condition': ''
4141
}, (error, result) => {

test/parallel/test-inspector-bindings.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ function testSampleDebugSession() {
8686
session.post('Debugger.enable', () => cbAsSecondArgCalled = true);
8787
session.post('Debugger.setBreakpointByUrl', {
8888
'lineNumber': 13,
89-
'url': pathToFileURL(path.resolve(__dirname, __filename)).toString(),
89+
'url': decodeURIComponent(pathToFileURL(path.resolve(__dirname, __filename)).toString()),
9090
'columnNumber': 0,
9191
'condition': ''
9292
});

test/parallel/test-inspector-multisession-js.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ async function test() {
3434
await new Promise((resolve, reject) => {
3535
session1.post('Debugger.setBreakpointByUrl', {
3636
'lineNumber': 12,
37-
'url': pathToFileURL(path.resolve(__dirname, __filename)).toString(),
37+
'url': decodeURIComponent(pathToFileURL(path.resolve(__dirname, __filename)).toString()),
3838
'columnNumber': 0,
3939
'condition': ''
4040
}, (error, result) => {
Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
'use strict';
2+
const common = require('../common');
3+
4+
common.skipIfInspectorDisabled();
5+
6+
const assert = require('assert');
7+
const { Session } = require('inspector');
8+
const path = require('path');
9+
const { pathToFileURL } = require('url');
10+
11+
function debugged() {
12+
return 42;
13+
}
14+
15+
async function test() {
16+
const session1 = new Session();
17+
session1.connect();
18+
let session1Paused = false;
19+
session1.on('Debugger.paused', () => session1Paused = true);
20+
session1.post('Debugger.enable');
21+
22+
await new Promise((resolve, reject) => {
23+
session1.post('Debugger.setBreakpointByUrl', {
24+
'lineNumber': 12,
25+
'url': pathToFileURL(path.resolve(__dirname, __filename)).toString(),
26+
'columnNumber': 0,
27+
'condition': ''
28+
}, (error, result) => {
29+
return error ? reject(error) : resolve(result);
30+
});
31+
});
32+
33+
debugged();
34+
35+
assert(!session1Paused);
36+
session1.disconnect();
37+
38+
// now check with another session
39+
let session2Paused = false;
40+
const session2 = new Session();
41+
session2.connect();
42+
session2.on('Debugger.paused', () => session2Paused = true);
43+
session2.post('Debugger.enable');
44+
45+
await new Promise((resolve, reject) => {
46+
session2.post('Debugger.setBreakpointByUrl', {
47+
'lineNumber': 12,
48+
'url': decodeURIComponent(pathToFileURL(path.resolve(__dirname, __filename)).toString()),
49+
'columnNumber': 0,
50+
'condition': ''
51+
}, (error, result) => {
52+
return error ? reject(error) : resolve(result);
53+
});
54+
});
55+
56+
debugged();
57+
58+
assert(session2Paused);
59+
session2.disconnect();
60+
}
61+
62+
const interval = setInterval(() => {}, 1000);
63+
test().then(common.mustCall(() => {
64+
clearInterval(interval);
65+
console.log('Done!');
66+
}));

0 commit comments

Comments
 (0)