Closed Bug 1783598 Opened 3 years ago Closed 3 years ago

[wpt-sync] Sync PR 35373 - Simplify import maps web platform tests

Categories

(Testing :: web-platform-tests, task, P4)

task

Tracking

(firefox106 fixed)

RESOLVED FIXED
106 Branch
Tracking Status
firefox106 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

Sync web-platform-tests PR 35373 into mozilla-central (this bug is closed when the sync is complete).

PR: https://github.com/web-platform-tests/wpt/pull/35373
Details from upstream follow.

Domenic Denicola <domenic@chromium.org> wrote:

Simplify import maps web platform tests

  • Use import.meta.resolve() and \<base> trickery, instead of a service worker + sometimes Chromium internals.

  • Remove the parsing tests that used Chromium internals. We should convert these into resolution tests eventually, but for now they just make wpt.fyi look sad and are confusing for other engines. We leave the JSON files here for now in anticipation of that upcoming conversion.

  • Use \<meta name="variant"> instead of a loop over the JSON files. This avoids the need for \<meta timeout="long"> and possibly allows some parallelism.

  • Renamed data-base-url.json to be data-url-prefix.json and update the test description to reflect the intent. This confusion originates from the original JS to JSON conversion at https://github.com/WICG/import-maps/commit/6cb173dc44449e1b341e49c29509867150f670d9.

Fixes https://github.com/web-platform-tests/wpt/issues/32697.

Change-Id: I4943f4249eaec89f718c7a7fef271dbc61ec3f77

Reviewed-on: https://chromium-review.googlesource.com/3816001
WPT-Export-Revision: 0c3fb719292049c3dbfc1793b7cb94d48afd21f5

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, and Chrome on GitHub CI

Total 10 tests and 31 subtests

Status Summary

Firefox

OK : 10
PASS: 61
FAIL: 166

Chrome

OK : 10
PASS: 227

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /import-maps/data-driven/resolving.html?scopes.json [wpt.fyi]
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: d: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: c: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: vue: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to toplevel: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers-schemes.json [wpt.fyi]
    • URL-like specifiers: Non-special vs. special schemes: data:text/javascript,console.log('foo'): FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: data:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: about:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: about:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: http:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: http:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: https:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: https:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: file:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: file:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?tricky-specifiers.json [wpt.fyi]
    • Tricky specifiers: explicitly-mapped specifiers that happen to have a slash: package/withslash: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: .: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: %2E: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: %2F: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/bar: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?resolving-null.json [wpt.fyi]
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/b/c/x: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?scopes-exact-vs-prefix.json [wpt.fyi]
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers.json [wpt.fyi]
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://///example.com/lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: /lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/app/dotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: ../app/dotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/dotdotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: ../dotdotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: /: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: ../: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/app/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: /app/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: ../app/: FAIL (Chrome: PASS)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: /test/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: https://example.com/app/test/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: should use the last entry's address when URL-like specifiers parse to the same absolute URL: /test: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/..: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/..: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../../backtrack: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?overlapping-entries.json [wpt.fyi]
    • should favor the most-specific key: Overlapping entries with trailing slashes: a: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/x: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/c: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?packages-via-trailing-slashes.json [wpt.fyi]
    • Package-like scenarios: package main modules: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: package main modules: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: package main modules: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo?query: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo#fragment: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo?query#fragment: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package names that end in a slash should just pass through: moment/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/../207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/WICG/import-maps/issues/207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path//WICG/import-maps/issues/207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../きつね/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../きつね/: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?empty-import-map.json [wpt.fyi]
    • valid relative specifiers: ./foo: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/../bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/../../bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ../foo: FAIL (Chrome: PASS)
    • valid relative specifiers: ../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ../../../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /foo: FAIL (Chrome: PASS)
    • valid relative specifiers: /foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /../../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /../foo/../bar: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://fetch-scheme.net: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https:fetch-scheme.org: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://fetch%2Dscheme.com/: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://///fetch-scheme.com///: FAIL (Chrome: PASS)
    • non-HTTPS fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: mailto:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: import:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: javascript:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: wss:non-fetch-scheme: FAIL (Chrome: PASS)

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, and Chrome on GitHub CI

Total 10 tests and 31 subtests

Status Summary

Firefox

OK : 10
PASS: 61
FAIL: 166

Chrome

OK : 10
PASS: 227

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /import-maps/data-driven/resolving.html?scopes.json [wpt.fyi]
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: d: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: c: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: vue: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to toplevel: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers-schemes.json [wpt.fyi]
    • URL-like specifiers: Non-special vs. special schemes: data:text/javascript,console.log('foo'): FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: data:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: about:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: about:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: http:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: http:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: https:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: https:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: file:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: file:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/foo: FAIL (Chrome: PASS)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?tricky-specifiers.json [wpt.fyi]
    • Tricky specifiers: explicitly-mapped specifiers that happen to have a slash: package/withslash: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: .: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: %2E: FAIL (Chrome: PASS)
    • Tricky specifiers: specifier with punctuation: %2F: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/: FAIL (Chrome: PASS)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/bar: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?resolving-null.json [wpt.fyi]
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/b/c/x: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?scopes-exact-vs-prefix.json [wpt.fyi]
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers.json [wpt.fyi]
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://///example.com/lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: /lib/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/app/dotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: ../app/dotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/dotdotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Ordinary URL-like specifiers: ../dotdotrelative/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: /: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: ../: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/app/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: /app/: FAIL (Chrome: PASS)
    • URL-like specifiers: Import map entries just composed from / and .: ../app/: FAIL (Chrome: PASS)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: /test/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: https://example.com/app/test/foo.mjs: FAIL (Chrome: PASS)
    • URL-like specifiers: should use the last entry's address when URL-like specifiers parse to the same absolute URL: /test: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/..: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (relative URLs): /test/../../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/..: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../backtrack: FAIL (Chrome: PASS)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../../backtrack: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?overlapping-entries.json [wpt.fyi]
    • should favor the most-specific key: Overlapping entries with trailing slashes: a: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/x: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/: FAIL (Chrome: PASS)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/c: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?packages-via-trailing-slashes.json [wpt.fyi]
    • Package-like scenarios: package main modules: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: package main modules: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: package main modules: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo?query: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo#fragment: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: moment/foo?query#fragment: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package submodules: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: package names that end in a slash should just pass through: moment/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/../207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path/WICG/import-maps/issues/207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/path//WICG/import-maps/issues/207/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../きつね/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../きつね/: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?empty-import-map.json [wpt.fyi]
    • valid relative specifiers: ./foo: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/../bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ./foo/../../bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ../foo: FAIL (Chrome: PASS)
    • valid relative specifiers: ../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: ../../../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /foo: FAIL (Chrome: PASS)
    • valid relative specifiers: /foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /../../foo/bar: FAIL (Chrome: PASS)
    • valid relative specifiers: /../foo/../bar: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://fetch-scheme.net: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https:fetch-scheme.org: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://fetch%2Dscheme.com/: FAIL (Chrome: PASS)
    • HTTPS scheme absolute URLs: https://///fetch-scheme.com///: FAIL (Chrome: PASS)
    • non-HTTPS fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: mailto:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: import:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: javascript:non-fetch-scheme: FAIL (Chrome: PASS)
    • non-fetch scheme absolute URLs: wss:non-fetch-scheme: FAIL (Chrome: PASS)

Now with import.meta.resolve (bug 1775424) is landed, can we re-trigger the wpt test sync bot to run the CI again and perhaps land those upstream changes?
here is my try run
https://treeherder.mozilla.org/jobs?repo=try&revision=4f5e64c9ad8d7e121e915b62132d9801ec7a9dc1
(also with two .ini removed in the following commit)

Flags: needinfo?(james)

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 10 tests and 31 subtests

Status Summary

Firefox

OK : 10
PASS : 61
FAIL : 166

Chrome

OK : 10
PASS : 227

Safari

PASS : 7
TIMEOUT: 17
NOTRUN : 130

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /import-maps/data-driven/resolving.html?scopes.json [wpt.fyi]
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: d: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: c: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: vue: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to toplevel: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers-schemes.json [wpt.fyi]
    • URL-like specifiers: Non-special vs. special schemes: data:text/javascript,console.log('foo'): FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Non-special vs. special schemes: data:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?tricky-specifiers.json [wpt.fyi]
    • Tricky specifiers: explicitly-mapped specifiers that happen to have a slash: package/withslash: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Tricky specifiers: specifier with punctuation: .: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2E: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2F: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?resolving-null.json [wpt.fyi]
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/b/c/x: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?scopes-exact-vs-prefix.json [wpt.fyi]
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers.json [wpt.fyi]
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Ordinary URL-like specifiers: https://///example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: /lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: /test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: https://example.com/app/test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: should use the last entry's address when URL-like specifiers parse to the same absolute URL: /test: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?overlapping-entries.json [wpt.fyi]
    • should favor the most-specific key: Overlapping entries with trailing slashes: a: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/x: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/c: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?packages-via-trailing-slashes.json [wpt.fyi]
    • Package-like scenarios: package main modules: moment: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Package-like scenarios: package main modules: lodash-dot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package main modules: lodash-dotdot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dotdot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package names that end in a slash should just pass through: moment/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/../207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path//WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?empty-import-map.json [wpt.fyi]
    • valid relative specifiers: ./foo: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • valid relative specifiers: ./foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch-scheme.net: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https:fetch-scheme.org: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch%2Dscheme.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://///fetch-scheme.com///: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-HTTPS fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: mailto:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: import:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: javascript:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: wss:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 10 tests and 31 subtests

Status Summary

Firefox

OK : 10
PASS : 61
FAIL : 166

Chrome

OK : 10
PASS : 227

Safari

PASS : 7
TIMEOUT: 17
NOTRUN : 130

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /import-maps/data-driven/resolving.html?scopes.json [wpt.fyi]
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: d: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: c: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: vue: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to toplevel: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers-schemes.json [wpt.fyi]
    • URL-like specifiers: Non-special vs. special schemes: data:text/javascript,console.log('foo'): FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Non-special vs. special schemes: data:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?tricky-specifiers.json [wpt.fyi]
    • Tricky specifiers: explicitly-mapped specifiers that happen to have a slash: package/withslash: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Tricky specifiers: specifier with punctuation: .: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2E: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2F: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?resolving-null.json [wpt.fyi]
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/b/c/x: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?scopes-exact-vs-prefix.json [wpt.fyi]
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers.json [wpt.fyi]
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Ordinary URL-like specifiers: https://///example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: /lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: /test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: https://example.com/app/test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: should use the last entry's address when URL-like specifiers parse to the same absolute URL: /test: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?overlapping-entries.json [wpt.fyi]
    • should favor the most-specific key: Overlapping entries with trailing slashes: a: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/x: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/c: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?packages-via-trailing-slashes.json [wpt.fyi]
    • Package-like scenarios: package main modules: moment: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Package-like scenarios: package main modules: lodash-dot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package main modules: lodash-dotdot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dotdot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package names that end in a slash should just pass through: moment/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/../207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path//WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?empty-import-map.json [wpt.fyi]
    • valid relative specifiers: ./foo: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • valid relative specifiers: ./foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch-scheme.net: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https:fetch-scheme.org: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch%2Dscheme.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://///fetch-scheme.com///: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-HTTPS fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: mailto:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: import:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: javascript:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: wss:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)

CI Results

Ran 9 Firefox configurations based on mozilla-central, and Firefox, Chrome, and Safari on GitHub CI

Total 10 tests and 31 subtests

Status Summary

Firefox

OK : 10
PASS : 61
FAIL : 166

Chrome

OK : 10
PASS : 227

Safari

PASS : 7
TIMEOUT: 17
NOTRUN : 130

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

New Tests That Don't Pass

  • /import-maps/data-driven/resolving.html?scopes.json [wpt.fyi]
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should fall back to imports when no scopes match: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use a direct scope override: d: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: a: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: b: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: c: FAIL (Chrome: PASS)
    • Fallback to toplevel and between scopes: should use an indirect scope override: d: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: An empty string scope is a scope with import map base URL: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: './' scope is a scope with import map base URL's directory: c: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: a: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: b: FAIL (Chrome: PASS)
    • Relative URL scope keys: '../' scope is a scope with import map base URL's parent directory: c: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope should use the scope if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to less specific scope: vue: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs inside the scope fallback to toplevel: moment/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Base URLs outside a scope shouldn't use the scope even if the scope has matching keys: lodash-dotdot/foo: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment: FAIL (Chrome: PASS)
    • Package-like scenarios: Fallback to toplevel or not, depending on trailing slash match: moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers-schemes.json [wpt.fyi]
    • URL-like specifiers: Non-special vs. special schemes: data:text/javascript,console.log('foo'): FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Non-special vs. special schemes: data:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: about:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blob:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: blah:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: http:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: https:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ftp:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: file:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: ws:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Non-special vs. special schemes: wss:text/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?tricky-specifiers.json [wpt.fyi]
    • Tricky specifiers: explicitly-mapped specifiers that happen to have a slash: package/withslash: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Tricky specifiers: specifier with punctuation: .: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: ..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2E: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: specifier with punctuation: %2F: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/%E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: URL-like specifiers are normalized: https://map.example/きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: %E3%81%8D%E3%81%A4%E3%81%AD/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Tricky specifiers: Bare specifiers are not normalized: きつね/fox/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?resolving-null.json [wpt.fyi]
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: null/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: invalid-url/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: without-trailing-slashes/b/c/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/x: FAIL (Chrome: PASS)
    • Entries with errors shouldn't allow fallback: No fallback to less-specific prefixes: prefix-resolution-error/b/c/x: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?scopes-exact-vs-prefix.json [wpt.fyi]
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope without trailing slash only: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scope with trailing slash only: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Non-trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Trailing-slash base URL (exact match): moment/foo: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment: FAIL (Chrome: PASS)
    • Exact vs. prefix based matching: Scopes with and without trailing slash: Subpath base URL (prefix match): moment/foo: FAIL (Chrome: PASS)
  • /import-maps/data-driven/resolving.html?url-specifiers.json [wpt.fyi]
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • URL-like specifiers: Ordinary URL-like specifiers: https://///example.com/lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: /lib/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../app/dotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: https://example.com/dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Ordinary URL-like specifiers: ../dotdotrelative/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: https://example.com/app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: /app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: Import map entries just composed from / and .: ../app/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: /test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: prefix-matched by keys with trailing slashes: https://example.com/app/test/foo.mjs: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: should use the last entry's address when URL-like specifiers parse to the same absolute URL: /test: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (relative URLs): /test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/..: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
    • URL-like specifiers: backtracking (absolute URLs): https://example.com/test/../../../backtrack: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?overlapping-entries.json [wpt.fyi]
    • should favor the most-specific key: Overlapping entries with trailing slashes: a: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/x: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • should favor the most-specific key: Overlapping entries with trailing slashes: a/b/c: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?packages-via-trailing-slashes.json [wpt.fyi]
    • Package-like scenarios: package main modules: moment: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • Package-like scenarios: package main modules: lodash-dot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package main modules: lodash-dotdot: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: moment/foo?query#fragment: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package submodules: lodash-dotdot/foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: package names that end in a slash should just pass through: moment/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/../207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path/WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/path//WICG/import-maps/issues/207/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-1/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../%E3%81%8D%E3%81%A4%E3%81%AD/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • Package-like scenarios: backtracking via ..: mapped/non-ascii-2/../きつね/: FAIL (Chrome: PASS, Safari: NOTRUN)
  • /import-maps/data-driven/resolving.html?empty-import-map.json [wpt.fyi]
    • valid relative specifiers: ./foo: FAIL (Chrome: PASS, Safari: TIMEOUT)
    • valid relative specifiers: ./foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ./foo/../../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: ../../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../../foo/bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • valid relative specifiers: /../foo/../bar: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch-scheme.net: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https:fetch-scheme.org: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://fetch%2Dscheme.com/: FAIL (Chrome: PASS, Safari: NOTRUN)
    • HTTPS scheme absolute URLs: https://///fetch-scheme.com///: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-HTTPS fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: about:fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: mailto:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: import:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: javascript:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
    • non-fetch scheme absolute URLs: wss:non-fetch-scheme: FAIL (Chrome: PASS, Safari: NOTRUN)
Pushed by wptsync@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/079773bd124c [wpt PR 35373] - Import maps: simplify web platform tests, a=testonly https://hg.mozilla.org/integration/autoland/rev/c9e555c81d34 [wpt PR 35373] - Update wpt metadata, a=testonly
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → FIXED
Target Milestone: --- → 106 Branch

The sync for this has now run. Let me know if you have any more questions.

Flags: needinfo?(james)
You need to log in before you can comment on or make changes to this bug.