diff options
Diffstat (limited to 'dom/events/test/test_bug368835.html')
-rw-r--r-- | dom/events/test/test_bug368835.html | 101 |
1 files changed, 101 insertions, 0 deletions
diff --git a/dom/events/test/test_bug368835.html b/dom/events/test/test_bug368835.html new file mode 100644 index 000000000..14581ee34 --- /dev/null +++ b/dom/events/test/test_bug368835.html @@ -0,0 +1,101 @@ +<!DOCTYPE HTML> +<html> +<!-- +https://bugzilla.mozilla.org/show_bug.cgi?id=368835 +--> + <head> + <title>Test for Bug 368835</title> + + <link rel="stylesheet" type="text/css" href="http://mochi.test:8888/tests/SimpleTest/test.css" /> + + <script type="text/javascript" src="http://mochi.test:8888/tests/SimpleTest/SimpleTest.js"></script> + </head> + + <body> + <a target="_blank" + href="https://bugzilla.mozilla.org/show_bug.cgi?id=368835"> + Mozilla Bug 368835 + </a> + <p id="display"></p> + <div id="content" style="display: none"> + </div> + <pre id="test"> + <script class="testbody" type="text/javascript"> + function dataContainerEventHandler(aEvent) + { + var value = ""; + var isPassed = true; + try { + value = aEvent.getData("data1"); + isPassed = true; + } catch (e) { + isPassed = false; + } + + ok(isPassed, "getData shouldn't fail."); + ok(value == "data1", "Wrong value of data."); + + is(aEvent.getData("document"), document); + is(aEvent.getData("window"), window); + is(aEvent.getData("event"), aEvent); + is(aEvent.getData("null"), null); + is(aEvent.getData("1"), 1); + is(aEvent.getData("1.1"), 1.1); + is(aEvent.getData("true"), true); + + try { + aEvent.setData("data3", "data3"); + isPassed = false; + } catch (e) { + isPassed = true; + } + + ok(isPassed, "setData should fail during event dispatching."); + } + + function doTest() + { + var isPassed; + var event = null; + + try { + event = document.createEvent("datacontainerevents"); + isPassed = true; + } catch (e) { + isPassed = false; + } + + ok(isPassed, "Document should know about 'datacontainerevents' event class."); + ok(("setData" in event), "nsIDOMDataContainerEvent isn't available."); + + event.initEvent("dataContainerEvent", true, true); + + try { + event.setData("data1", "data1"); + event.setData("document", document); + event.setData("window", window); + event.setData("event", event); + event.setData("null", null); + event.setData("1", 1); + event.setData("1.1", 1.1); + event.setData("true", true); + isPassed = true; + } catch (e) { + isPassed = false; + } + + ok(isPassed, "setData shouldn't fail when event is initialized."); + + document.body.addEventListener("dataContainerEvent", + dataContainerEventHandler, true); + document.body.dispatchEvent(event); + SimpleTest.finish(); + } + + SimpleTest.waitForExplicitFinish(); + addLoadEvent(doTest); + </script> + </pre> + </body> +</html> + |