| <!DOCTYPE html> | |
| <html> | |
| <head> | |
| <title>EventSource: constructor (act as if there is a network error)</title> | |
| <meta name=timeout content=long> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| </head> | |
| <body> | |
| <div id="log"></div> | |
| <script> | |
| function fetchFail(url) { | |
| var test = async_test(document.title + " (" + url + ")", { timeout: 20000 }) | |
| test.step(function() { | |
| var source = new EventSource(url) | |
| source.onerror = function(e) { | |
| test.step(function() { | |
| assert_equals(source.readyState, source.CLOSED) | |
| assert_false(e.hasOwnProperty('data')) | |
| }) | |
| test.done() | |
| } | |
| }) | |
| } | |
| fetchFail("http://example.not/") | |
| fetchFail("https://example.not/test") | |
| fetchFail("ftp://example.not/") | |
| fetchFail("about:blank") | |
| fetchFail("mailto:whatwg@awesome.example") | |
| fetchFail("javascript:alert('FAIL')") | |
| </script> | |
| <!-- This tests "fails the connection" as well as making sure a simple | |
| event is dispatched and not a MessageEvent --> | |
| </body> | |
| </html> |