This ensure we do not mess up the bytes when an URL is partially parsed and is invalid.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".


PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
FAIL src should be foo://tête à tête@host/. Was foo://t%C3%AAte%20%C3%A0%20t%C3%AAte@host/.
FAIL src should be foo://user:tête à tête@host/. Was foo://user:t%C3%AAte%20%C3%A0%20t%C3%AAte@host/.
FAIL src should be foo://<>@host/. Was foo://%3C%3E@host/.
FAIL src should be foo://user:<>@host/. Was foo://user:%3C%3E@host/.
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
PASS src is expected
FAIL src should be ws:/tête. Was ws://xn--tte-fma/.
FAIL src should be ftp:/tête. Was ftp://xn--tte-fma/.
FAIL src should be http:/tête. Was http://xn--tte-fma/.
FAIL src should be https:/tête. Was https://xn--tte-fma/.
PASS src is expected
PASS successfullyParsed is true

TEST COMPLETE

