Skip to content

Commit bad16b3

Browse files
committed
test_runner: get format from parentURL as default or pass specifier argument as fallback
1 parent 94b1014 commit bad16b3

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

lib/test/mock_loader.js

+7-7
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ let debug = require('internal/util/debuglog').debuglog('test_runner', (fn) => {
2323
debug = fn;
2424
});
2525
const { createRequire, isBuiltin } = require('module');
26-
const { defaultResolve } = require('internal/modules/esm/resolve');
2726
const { defaultGetFormatWithoutErrors } = require('internal/modules/esm/get_format');
27+
const { defaultResolve } = require('internal/modules/esm/resolve');
2828

2929
// TODO(cjihrig): This file should not be exposed publicly, but register() does
3030
// not handle internal loaders. Before marking this API as stable, one of the
@@ -97,13 +97,13 @@ async function resolve(specifier, context, nextResolve) {
9797
if (isBuiltin(specifier)) {
9898
mockSpecifier = ensureNodeScheme(specifier);
9999
} else {
100-
const format = defaultGetFormatWithoutErrors(pathToFileURL(specifier));
100+
const format = defaultGetFormatWithoutErrors(
101+
pathToFileURL(context.parentURL ?? specifier)
102+
);
101103

102104
try {
103-
if(format === "module") {
104-
specifier = pathToFileURL(
105-
defaultResolve(specifier, context)
106-
).href;
105+
if (format === 'module') {
106+
specifier = defaultResolve(specifier, context).url;
107107
} else {
108108
const req = createRequire(context.parentURL);
109109
specifier = pathToFileURL(req.resolve(specifier)).href;
@@ -240,4 +240,4 @@ function sendAck(buf, status = kMockSuccess) {
240240
AtomicsNotify(buf, 0);
241241
}
242242

243-
module.exports = { initialize, load, resolve };
243+
module.exports = { initialize, load, resolve };

0 commit comments

Comments
 (0)