62 lines
2.1 KiB
HTML
62 lines
2.1 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<body>
|
|
<script src="../../resources/js-test-pre.js"></script>
|
|
<script>
|
|
description("Tests the behavior of dispatchEvent() on a Window");
|
|
jsTestIsAsync = true;
|
|
|
|
onload = function(e) {
|
|
testEvent = e;
|
|
|
|
debug("* Received load event");
|
|
shouldBeEqualToString("testEvent.type", "load");
|
|
shouldBeFalse("testEvent.bubbles");
|
|
shouldBeFalse("testEvent.cancelable");
|
|
shouldBeFalse("testEvent.composed");
|
|
shouldBeTrue("testEvent.isTrusted");
|
|
shouldBe("testEvent.eventPhase", "Event.AT_TARGET");
|
|
shouldBe("testEvent.target", "window.document");
|
|
shouldBe("testEvent.currentTarget", "window");
|
|
shouldBeFalse("testEvent.cancelBubble");
|
|
|
|
// Should fail because the event is being dispatched.
|
|
evalAndLog("testEvent.initEvent('foo', true, true)");
|
|
|
|
shouldBeEqualToString("testEvent.type", "load");
|
|
shouldBeFalse("testEvent.bubbles");
|
|
shouldBeFalse("testEvent.cancelable");
|
|
shouldBeTrue("testEvent.isTrusted");
|
|
|
|
evalAndLog("testEvent.stopPropagation()");
|
|
shouldBeTrue("testEvent.cancelBubble");
|
|
|
|
setTimeout(function() {
|
|
debug("* Event is no longer being dispatched");
|
|
shouldBeEqualToString("testEvent.type", "load");
|
|
shouldBeFalse("testEvent.bubbles");
|
|
shouldBeFalse("testEvent.cancelable");
|
|
shouldBeFalse("testEvent.composed");
|
|
shouldBeTrue("testEvent.isTrusted");
|
|
shouldBe("testEvent.eventPhase", "Event.NONE");
|
|
shouldBe("testEvent.target", "window.document");
|
|
shouldBeNull("testEvent.currentTarget");
|
|
shouldBeFalse("testEvent.cancelBubble");
|
|
|
|
evalAndLog("testEvent.initEvent('bar', true, true)");
|
|
shouldBeEqualToString("testEvent.type", "bar");
|
|
shouldBeTrue("testEvent.bubbles");
|
|
shouldBeTrue("testEvent.cancelable");
|
|
shouldBeFalse("testEvent.composed");
|
|
shouldBeFalse("testEvent.isTrusted");
|
|
shouldBe("testEvent.eventPhase", "Event.NONE");
|
|
shouldBeNull("testEvent.target");
|
|
shouldBeNull("testEvent.currentTarget");
|
|
|
|
finishJSTest();
|
|
}, 0);
|
|
}
|
|
</script>
|
|
<script src="../../resources/js-test-post.js"></script>
|
|
</html>
|