PR-URL: https://github.com/nodejs/node/pull/52706 Reviewed-By: Geoffrey Booth <webadmin@geoffreybooth.com> Reviewed-By: Jacob Smith <jacob@frende.me> Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Gerhard Stöbich <deb2001-github@yahoo.de>
31 lines
961 B
JavaScript
31 lines
961 B
JavaScript
import { skipIfWorker } from '../common/index.mjs';
|
|
import * as fixtures from '../common/fixtures.mjs';
|
|
import { register } from 'node:module';
|
|
import assert from 'node:assert';
|
|
skipIfWorker();
|
|
|
|
async function resolve(referrer, context, next) {
|
|
const result = await next(referrer, context);
|
|
const url = new URL(result.url);
|
|
url.searchParams.set('randomSeed', Math.random());
|
|
result.url = url.href;
|
|
return result;
|
|
}
|
|
|
|
function load(url, context, next) {
|
|
if (context.importAttributes.type === 'json') {
|
|
return {
|
|
shortCircuit: true,
|
|
format: 'json',
|
|
source: JSON.stringify({ data: Math.random() }),
|
|
};
|
|
}
|
|
return next(url, context);
|
|
}
|
|
|
|
register(`data:text/javascript,export ${encodeURIComponent(resolve)};export ${encodeURIComponent(load)}`);
|
|
|
|
assert.notDeepStrictEqual(
|
|
await import(fixtures.fileURL('empty.json'), { with: { type: 'json' } }),
|
|
await import(fixtures.fileURL('empty.json'), { with: { type: 'json' } }),
|
|
);
|