blob: d81a5d356dbe33c2d35d242b3ff66d486d9f770b [file] [log] [blame]
Note: If your browser limits the number of handler registration requests on a page, you might need to disable or significantly increase that limit for the tests below to run.
FAIL the registerProtocolHandler method should exist on the navigator object assert_idl_attribute: property "registerProtocolHandler" not found in prototype chain
FAIL a handler with valid arguments should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a relative URL should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', '%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with a fragment identifier should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '#%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with a query string should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '?foo=%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with a multi-argument query string should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '?foo=%s&bar', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with the passed string as a directory name should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '/%s/bar/baz/', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with the passed string as a directory name followed by a query string and fragment identifier should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '/%s/bar/baz/?foo=1337&bar#baz', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a URL with the passed string included twice should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('tel', location.href + '/%s/foo/%s/', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL an empty url argument should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', '', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', '', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL %s instead of domain name should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'http://%s.com', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'http://%s.com', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL %s instead of subdomain name should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'http://%s.example.com', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'http://%s.example.com', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL a url argument without %s should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', location.href + '', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', location.href + '', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a url argument pointing to a different domain name, without %s should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'http://example.com', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'http://example.com', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a url argument without %s (but with %) should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', location.href + '/%', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', location.href + '/%', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a url argument without %s (but with %a) should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a url argument pointing to a different domain name should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'http://example.com/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'http://example.com/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL a url argument pointing to a different domain name should throw SECURITY_ERR (2) assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'https://example.com/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'https://example.com/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL a url argument pointing to a different domain name should throw SECURITY_ERR (3) assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'http://foobar.example.com/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'http://foobar.example.com/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL looping handlers should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto', 'mailto:%s@example.com', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto', 'mailto:%s@example.com', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL a url argument pointing to a non-http[s] scheme should throw SECURITY_ERR due to not being of the same origin assert_throws: function "function () { navigator.registerProtocolHandler('sms', 'tel:%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('sms', 'tel:%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL a protocol argument containing an unrecognized scheme should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler('unrecognized', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('unrecognized', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing : should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto:', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto:', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing :// should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto://', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto://', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing http:// should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('http://', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('http://', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing a null character should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto' + String.fromCharCode(0), location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto' + String.fromCharCode(0), location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing a backspace character should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailtoo' + String.fromCharCode(8), location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailtoo' + String.fromCharCode(8), location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing a LF character should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mailto' + String.fromCharCode(10), location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mailto' + String.fromCharCode(10), location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument containing non-alphanumeric characters (like a cyrillic “а”) should throw SYNTAX_ERR assert_throws: function "function () { navigator.registerProtocolHandler('mаilto', location.href + '/%a', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('mаilto', location.href + '/%a', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SYNTAX_ERR: property "code" is equal to undefined, expected 12
FAIL a protocol argument of “TEL” should be equivalent to “tel” navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('TEL', location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL a protocol argument of “teL” should be equivalent to “tel” navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler('teL', location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL attempting to override the about protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the attachment protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the blob protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the chrome protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the cid protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the data protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the file protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the ftp protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the http protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the https protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the javascript protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the livescript protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the mid protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the mocha protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the opera protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the operamail protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the res protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the resource protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the shttp protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the tcl protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the vbscript protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the view-source protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the ws protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the wss protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL attempting to override the wyciwyg protocol should throw SECURITY_ERR assert_throws: function "function () { navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo') }" threw object "TypeError: navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(blacklist[bi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)" that is not a DOMException SECURITY_ERR: property "code" is equal to undefined, expected 18
FAIL overriding the geo protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the im protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the irc protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the ircs protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the mailto protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the mms protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the news protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the nntp protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the sms protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the smsto protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the tel protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the urn protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the webcal protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the wtai protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)
FAIL overriding the xmpp protocol should work navigator.registerProtocolHandler is not a function. (In 'navigator.registerProtocolHandler(whitelist[wi], location.href + '/%s', 'foo')', 'navigator.registerProtocolHandler' is undefined)