| <!DOCTYPE html> |
| <meta charset=utf-8> |
| <title>Document.createEvent</title> |
| <link rel=help href="https://dom.spec.whatwg.org/#dom-document-createevent"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| <script src="Document-createEvent.js"></script> |
| <div id="log"></div> |
| <script> |
| function testAlias(arg, iface) { |
| var ev; |
| test(function() { |
| ev = document.createEvent(arg); |
| assert_true(ev instanceof window[iface]); |
| assert_true(ev instanceof Event); |
| }, arg + " should be an alias for " + iface + "."); |
| test(function() { |
| assert_equals(ev.type, "", |
| "type should be initialized to the empty string"); |
| assert_equals(ev.target, null, |
| "target should be initialized to null"); |
| assert_equals(ev.currentTarget, null, |
| "currentTarget should be initialized to null"); |
| assert_equals(ev.eventPhase, 0, |
| "eventPhase should be initialized to NONE (0)"); |
| assert_equals(ev.bubbles, false, |
| "bubbles should be initialized to false"); |
| assert_equals(ev.cancelable, false, |
| "cancelable should be initialized to false"); |
| assert_equals(ev.defaultPrevented, false, |
| "defaultPrevented should be initialized to false"); |
| assert_equals(ev.isTrusted, false, |
| "isTrusted should be initialized to false"); |
| }, "createEvent('" + arg + "') should be initialized correctly."); |
| } |
| aliases.forEach(function(alias) { |
| testAlias(alias[0], alias[1]); |
| testAlias(alias[0].toLowerCase(), alias[1]); |
| testAlias(alias[0].toUpperCase(), alias[1]); |
| }); |
| |
| test(function() { |
| assert_throws("NOT_SUPPORTED_ERR", function() { |
| var evt = document.createEvent("foo"); |
| }); |
| assert_throws("NOT_SUPPORTED_ERR", function() { |
| // 'LATIN CAPITAL LETTER I WITH DOT ABOVE' (U+0130) |
| var evt = document.createEvent("U\u0130Event"); |
| }); |
| assert_throws("NOT_SUPPORTED_ERR", function() { |
| // 'LATIN SMALL LETTER DOTLESS I' (U+0131) |
| var evt = document.createEvent("U\u0131Event"); |
| }); |
| }, "Should throw NOT_SUPPORTED_ERR for unrecognized arguments"); |
| </script> |