40 lines
1.2 KiB
HTML
40 lines
1.2 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
</head>
|
|
<body>
|
|
<script type="module" src="../resources/importer.sub.js?name=..%2Fresources%2Flog.sub.js%3Fname%3DA"></script>
|
|
<script>
|
|
const log = [];
|
|
(async (variable) => {
|
|
await new Promise((resolve) => {
|
|
const interval = setInterval(() => {
|
|
if (variable.length > 0) {
|
|
clearInterval(interval);
|
|
resolve(variable);
|
|
}
|
|
}, 10);
|
|
});
|
|
const importMapScript = document.createElement('script');
|
|
importMapScript.type = 'importmap';
|
|
importMapScript.textContent = JSON.stringify({
|
|
imports: {
|
|
"../resources/log.sub.js?name=A": "../resources/log.sub.js?name=B"
|
|
}
|
|
});
|
|
document.head.appendChild(importMapScript);
|
|
|
|
const inlineModule = document.createElement('script');
|
|
inlineModule.type = 'module';
|
|
inlineModule.innerHTML = `test(() => {
|
|
assert_true(import.meta.resolve("../resources/log.sub.js?name=A").endsWith("/resources/log.sub.js?name=A"));
|
|
}, "Resolution after import map should not be redefined");`;
|
|
document.head.appendChild(inlineModule);
|
|
})(log);
|
|
</script>
|
|
</body>
|
|
</html>
|
|
|
|
|