Closed Bug 1977108 Opened 1 month ago Closed 1 month ago

[wpt-sync] Sync PR 53745 - URL: add path setter tests for parent directory

Categories

(Core :: DOM: Networking, task, P4)

task

Tracking

()

RESOLVED FIXED
142 Branch
Tracking Status
firefox142 --- fixed

People

(Reporter: wpt-sync, Unassigned)

References

()

Details

(Whiteboard: [wptsync downstream])

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

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

Daijiro Wachi <daijiro.wachi@gmail.com> wrote:

URL: add path setter tests for parent directory

I found out a gap between WHATWG's URL and Node.js as the below and add the test to capture it.

const NodeURL = require("url").URL;
const WhatwgURL = require("../whatwg-url/").URL;
const newPath = '/..';

const url = new NodeURL("foo://path/to");  
url.pathname = newPath;
console.log(url.href); // => foo://path

const url2 = new WhatwgURL("foo://path/to");
url2.pathname = newPath;
console.log(url2.href); // => foo://path/
Component: web-platform-tests → DOM: Networking
Product: Testing → Core

CI Results

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

Total 12 tests and 7 subtests

Status Summary

Firefox

OK : 12
PASS: 998
FAIL: 110

Chrome

OK : 12
PASS: 976
FAIL: 132

Safari

OK : 12
PASS: 1104
FAIL: 4

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

New Tests That Don't Pass

  • /url/url-setters-a-area.window.html?include=file [wpt.fyi]
    • <a>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters-a-area.window.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • <a>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <area>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters-a-area.window.html?include=javascript [wpt.fyi]
    • <a>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.worker.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)

CI Results

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

Total 12 tests and 7 subtests

Status Summary

Firefox

OK : 12
PASS: 998
FAIL: 110

Chrome

OK : 12
PASS: 976
FAIL: 132

Safari

OK : 12
PASS: 1104
FAIL: 4

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

New Tests That Don't Pass

  • /url/url-setters-a-area.window.html?include=file [wpt.fyi]
    • <a>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters-a-area.window.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • <a>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <area>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters-a-area.window.html?include=javascript [wpt.fyi]
    • <a>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.worker.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)

CI Results

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

Total 12 tests and 7 subtests

Status Summary

Firefox

OK : 12
PASS: 998
FAIL: 110

Chrome

OK : 12
PASS: 976
FAIL: 132

Safari

OK : 12
PASS: 1104
FAIL: 4

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

New Tests That Don't Pass

  • /url/url-setters-a-area.window.html?include=file [wpt.fyi]
    • <a>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters-a-area.window.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • <a>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <area>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters-a-area.window.html?include=javascript [wpt.fyi]
    • <a>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.worker.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)

CI Results

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

Total 12 tests and 7 subtests

Status Summary

Firefox

OK : 12
PASS: 998
FAIL: 110

Chrome

OK : 12
PASS: 976
FAIL: 132

Safari

OK : 12
PASS: 1104
FAIL: 4

Links

Gecko CI (Treeherder)
GitHub PR Head
GitHub PR Base

Details

Firefox-only Failures

New Tests That Don't Pass

  • /url/url-setters-a-area.window.html?include=file [wpt.fyi]
    • <a>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters-a-area.window.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • <a>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <area>: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)
    • <a>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting https://domain.com:3000.port = '
      80
      80
      ': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <area>: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • <a>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <area>: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • <a>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • <a>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • <area>: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters-a-area.window.html?include=javascript [wpt.fyi]
    • <a>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • <a>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • <area>: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.worker.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?include=javascript [wpt.fyi]
    • URL: Setting <javascript://x/>.username = 'wario': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.password = 'bowser': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <javascript://x/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
  • /url/url-setters.any.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?exclude=(file|javascript|mailto) [wpt.fyi]
    • URL: Setting https://test.invalid/.host = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = 'h' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <non-spec:/.//p>.hostname = '': FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting https://test.invalid/.hostname = '*': FAIL (Chrome: FAIL, Safari: PASS)

    • URL: Setting https://domain.com:3000.port = '

      ': `FAIL` (Chrome: `PASS`, Safari: `FAIL`)
      
    • URL: Setting <foo:///some/path>.pathname = '' Non-special URLs with an empty host can have their paths erased: FAIL (Chrome: PASS, Safari: PASS)

    • URL: Setting <a:/>.pathname = '<

!"#$%&'()*+,-./09:;<=>?@AZ[]^_az{|}~€Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.:FAIL(Chrome:FAIL, Safari:PASS`)

  • URL: Setting <non-spec:/>.pathname = '/.//p' Serialize /. in path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '/..//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/>.pathname = '//p': FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <non-spec:/.//>.pathname = 'p' Drop /. from path: FAIL (Chrome: PASS, Safari: PASS)
  • URL: Setting <data:space ?query>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.search = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.search = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space #fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space #fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <data:space ?query#fragment>.hash = '' Trailing spaces and opaque paths: FAIL (Chrome: FAIL, Safari: PASS)
  • URL: Setting <sc:space ?query#fragment>.hash = '': FAIL (Chrome: FAIL, Safari: PASS)
  • /url/url-setters.any.worker.html?include=file [wpt.fyi]
    • URL: Setting <file://hi/path>.protocol = 's': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.username = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.password = 'test': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://y/>.host = 'x:123': FAIL (Chrome: FAIL, Safari: PASS)
    • URL: Setting <file://y/>.hostname = 'x:123': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://test/>.port = '12': FAIL (Chrome: PASS, Safari: PASS)
    • URL: Setting <file://monkey/>.pathname = '\' File URLs and (back)slashes: FAIL (Chrome: PASS, Safari: PASS)
Test result changes from PR not available.
Status: NEW → RESOLVED
Closed: 1 month ago
Resolution: --- → FIXED
Target Milestone: --- → 142 Branch
You need to log in before you can comment on or make changes to this bug.