bare-specifiers.sub.html (1294B)
1 <!DOCTYPE html> 2 <meta name="timeout" content="long"> 3 <script src="/resources/testharness.js"></script> 4 <script src="/resources/testharnessreport.js"></script> 5 <script src="resources/test-helper.js"></script> 6 7 <script> 8 // "bare/..." (i.e. without leading "./") are bare specifiers 9 // (not relative paths). 10 const importMap = ` 11 { 12 "imports": { 13 "bare/bare": "./resources/log.js?pipe=sub&name=bare", 14 "bare/cross-origin-bare": "https://{{domains[www1]}}:{{ports[https][0]}}/import-maps/resources/log.js?pipe=sub&name=cross-origin-bare", 15 "bare/to-data": "data:text/javascript,log.push('dataURL')", 16 17 "bare/to-bare": "bare/bare" 18 } 19 } 20 `; 21 22 const tests = { 23 // Arrays of expected results for: 24 // - <script src type="module">, 25 // - <script src> (classic script), 26 // - static import, and 27 // - dynamic import. 28 29 // Bare to HTTP(S). 30 "bare/bare": 31 [Result.URL, Result.URL, "log:bare", "log:bare"], 32 "bare/cross-origin-bare": 33 [Result.URL, Result.URL, "log:cross-origin-bare", "log:cross-origin-bare"], 34 35 // Bare to data: 36 "bare/to-data": 37 [Result.URL, Result.URL, "dataURL", "dataURL"], 38 39 // Bare to bare mapping is disabled. 40 "bare/to-bare": 41 [Result.URL, Result.URL, Result.PARSE_ERROR, Result.PARSE_ERROR], 42 }; 43 44 doTests(importMap, null, tests); 45 </script> 46 <body>