Test setting the host attribute of the URL in HTMLAnchorElement.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
Basic test
PASS a.href is 'https://www.otherdomain.com:0/path/'
Set host without port
PASS a.href is 'https://www.otherdomain.com:8080/path/'
Set host with '?' in it
PASS a.href is 'https://www.other:8080/path/?key=value'
Set default port for another protocol
PASS a.href is 'https://www.otherdomain.com:80/path/'
Set default port
PASS a.href is 'https://www.otherdomain.com/path/'
Set host with invalid port
PASS a.href is 'https://www.otherdomain.com:8080/path/'
Set host with letters in port number
PASS a.href is 'https://www.otherdomain.com:44/path/'
Leading space in port number
PASS a.href is 'https://www.otherdomain.com:8080/path/'
Colon without port number
PASS a.href is 'https://www.otherdomain.com:8080/path/'
Set host to null
PASS a.href is 'https://null:8080/path/'
Set host to empty string
PASS a.href is 'https://www.mydomain.com:8080/path/'
Set host to URL with file: protocol
PASS a.href is 'file://mydomain.com/path/'
Set host containing slashes in it
PASS a.href is 'https://www.otherdom:8080/path/'
Set host to a malformed URL
PASS a.href is 'https://[email protected]:8080/path/'
Set host that starts with ':'
PASS a.href is 'https://domain.com:8080/path/'
Set host to URL containing username and ..
PASS a.href is 'https://[email protected]:8080/pa..th/'
Set host to a URL with tel: protocol
PASS a.href is 'tel:+1-816-555-1212'
PASS successfullyParsed is true
TEST COMPLETE