This is a testharness.js-based test.
Found 32 FAIL, 0 TIMEOUT, 0 NOTRUN.
[FAIL] URL: Setting <a://example.net>.protocol = '' The empty string is not a valid scheme. Setter leaves the URL unchanged.
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'b'
assert_equals: expected "b://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'B' Upper-case ASCII is lower-cased
assert_equals: expected "b://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'é' Non-ASCII is rejected
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = '0b' No leading digit
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = '+b' No leading punctuation
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'bC0+-.'
assert_equals: expected "bc0+-.://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'b,c' Only some punctuation is acceptable
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <a://example.net>.protocol = 'bé' Non-ASCII is rejected
assert_equals: expected "a://example.net" but got "file:///A://example.net"
[FAIL] URL: Setting <ssh://[email protected]>.protocol = 'http' Can’t switch from non-special scheme to special
assert_equals: expected "ssh://[email protected]" but got "http://[email protected]/"
[FAIL] URL: Setting <ssh://[email protected]>.protocol = 'https'
assert_equals: expected "ssh://[email protected]" but got "https://[email protected]/"
[FAIL] URL: Setting <ssh://[email protected]>.protocol = 'file'
assert_equals: expected "ssh://[email protected]" but got "file://me%40example.net/"
[FAIL] URL: Setting <ssh://example.net>.protocol = 'file'
assert_equals: expected "ssh://example.net" but got "file://example.net/"
[FAIL] URL: Setting <nonsense:///test>.protocol = 'https'
assert_equals: expected "nonsense:///test" but got "https://test/"
[FAIL] URL: Setting <http://test/>.protocol = 'h\r\ntt ps' Tab and newline are stripped
assert_equals: expected "https://test/" but got "http://test/"
[FAIL] URL: Setting <http://test/>.protocol = 'https\r'
assert_equals: expected "https://test/" but got "http://test/"
[FAIL] URL: Setting <http://example.net>.username = '\0 \n\r !"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.
assert_equals: expected "http://%00%01%09%0A%0D%1F%20!%22%23$%&'()*+,-.%2F09%3A%3B%3C%3D%3E%3F%40AZ%5B%5C%5D%5E_%60az%7B%7C%7D~%7F%C2%80%C2%81%C3%89%C3%[email protected]/" but got "http://%00%01%09%0A%0D%1F%20!%22%23$%&%27()*+,-.%2F09%3A%3B%3C%3D%3E%3F%40AZ%5B%5C%5D%5E_%60az%7B%7C%7D~%7F%C2%80%C2%81%C3%89%C3%[email protected]/"
[FAIL] URL: Setting <http://example.net>.password = '\0 \n\r !"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the userinfo encode set.
assert_equals: expected "http://:%00%01%09%0A%0D%1F%20!%22%23$%&'()*+,-.%2F09%3A%3B%3C%3D%3E%3F%40AZ%5B%5C%5D%5E_%60az%7B%7C%7D~%7F%C2%80%C2%81%C3%89%C3%[email protected]/" but got "http://:%00%01%09%0A%0D%1F%20!%22%23$%&%27()*+,-.%2F09%3A%3B%3C%3D%3E%3F%40AZ%5B%5C%5D%5E_%60az%7B%7C%7D~%7F%C2%80%C2%81%C3%89%C3%[email protected]/"
[FAIL] URL: Setting <a:/foo>.host = 'example.net' Path-only URLs can gain a host
assert_equals: expected "a://example.net/foo" but got "file://example.net/A:/foo"
[FAIL] URL: Setting <https://example.com/>.host = 'xn--'
assert_equals: expected "https://example.com/" but got "https://xn--/"
[FAIL] URL: Setting <a:/foo>.hostname = 'example.net' Path-only URLs can gain a host
assert_equals: expected "a://example.net/foo" but got "file://example.net/A:/foo"
[FAIL] URL: Setting <https://example.com/>.hostname = 'xn--'
assert_equals: expected "https://example.com/" but got "https://xn--/"
[FAIL] URL: Setting <view-source+http://example.net/home?lang=fr#nav>.pathname = '\\a\\%2E\\b\\%2e.\\c' \\ is *not* a segment delimiter for non-'special' URLs
assert_equals: expected "view-source+http://example.net/\\\\a\\\\%2E\\\\b\\\\%2e.\\\\c?lang=fr#nav" but got "view-source+http://example.net\\\\a\\\\.\\\\b\\\\..\\\\c?lang=fr#nav"
[FAIL] URL: Setting <a:/>.pathname = '\0 \n\r !"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the default encode set. Tabs and newlines are removed.
assert_equals: expected "a:/%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E%3F@AZ[\\\\]^_%60az%7B|%7D~%7F%C2%80%C2%81%C3%89%C3%A9" but got "file:///%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E%3F@AZ[/]%5E_%60az%7B%7C%7D~%7F%C2%80%C2%81%C3%89%C3%A9"
[FAIL] URL: Setting <http://example.net>.pathname = '%2e%2E%c3%89té' Bytes already percent-encoded are left as-is, including %2E outside dotted segments.
assert_equals: expected "http://example.net/%2e%2E%c3%89t%C3%A9" but got "http://example.net/..%c3%89t%C3%A9"
[FAIL] URL: Setting <https://example.net?lang=en-US#nav>.search = '?'
assert_equals: expected "https://example.net/?#nav" but got "https://example.net/#nav"
[FAIL] URL: Setting <a:/>.search = '\0 \n\r !"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' UTF-8 percent encoding with the query encode set. Tabs and newlines are removed.
assert_equals: expected "a:/?%00%01%1F%20!%22%23$%&'()*+,-./09:;%3C=%3E?@AZ[\\\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "file:///A:/?%00%01%1F%20!%22%23$%&%27()*+,-./09:;%3C=%3E?@AZ[\\\\]^_`az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
[FAIL] URL: Setting <data:space ?query>.search = '' Drop trailing spaces from trailing opaque paths
assert_equals: expected "data:space" but got "data:space "
[FAIL] URL: Setting <sc:space ?query>.search = ''
assert_equals: expected "sc:space" but got "sc:space "
[FAIL] URL: Setting <a:/>.hash = '\0 \n\r !"#$%&'()*+,-./09:;<=>?@AZ[\\]^_`az{|}~Éé' Simple percent-encoding; tabs and newlines are removed
assert_equals: expected "a:/#%00%01%1F%20!%22#$%&'()*+,-./09:;%3C=%3E?@AZ[\\\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9" but got "file:///A:/#%00%01%1F%20!%22#$%&'()*+,-./09:;%3C=%3E?@AZ[\\\\]^_%60az{|}~%7F%C2%80%C2%81%C3%89%C3%A9"
[FAIL] URL: Setting <data:space #fragment>.hash = '' Drop trailing spaces from trailing opaque paths
assert_equals: expected "data:space" but got "data:space "
[FAIL] URL: Setting <sc:space #fragment>.hash = ''
assert_equals: expected "sc:space" but got "sc:space "
Harness: the test ran to completion.