blob: ad9db3f9ff6cc6375ae68820d2807508cc3a4229 [file] [log] [blame]
<html>
<head>
<script>
function ok(b,m) {
return external.ok(b, m);
}
function ondataavailable_test() {
var evobj, div, b = false;
div = document.getElementById("divid");
function ondataavailableHandler() {
b = true;
ok(window.event === evobj, "window.event != evobj");
ok(evobj.srcElement === div, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.fromElement === null, "evobj.srcElement = " + evobj.fromElement);
ok(evobj.toElement === null, "evobj.srcElement = " + evobj.toElement);
ok(evobj.type === "dataavailable", "evobj.type = " + evobj.type);
}
function ondataavailableDocHandler() {
b = true;
ok(window.event === evobj, "window.event != evobj");
ok(evobj.srcElement === null, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.fromElement === null, "evobj.srcElement = " + evobj.fromElement);
ok(evobj.toElement === null, "evobj.srcElement = " + evobj.toElement);
ok(evobj.type === "dataavailable", "evobj.type = " + evobj.type);
}
div.attachEvent("ondataavailable", ondataavailableHandler);
evobj = document.createEventObject();
ok(evobj.srcElement === null, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.fromElement === null, "evobj.srcElement = " + evobj.fromElement);
ok(evobj.toElement === null, "evobj.srcElement = " + evobj.toElement);
ok(evobj.type === "", "evobj.type = " + evobj.type);
div.fireEvent("ondataavailable", evobj);
ok(b, "ondataavailable handler not called?");
ok(evobj.srcElement === div, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.type === "dataavailable", "evobj.type = " + evobj.type);
div.detachEvent("ondataavailable", ondataavailableHandler);
b = false;
div.fireEvent("ondataavailable", evobj);
ok(!b, "ondataavailable handler called?");
ok(evobj.srcElement === div, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.type === "dataavailable", "evobj.type = " + evobj.type);
document.attachEvent("ondataavailable", ondataavailableDocHandler);
evobj = document.createEventObject();
document.fireEvent("ondataavailable", evobj);
ok(b, "ondataavailable handler not called?");
ok(evobj.srcElement === null, "evobj.srcElement = " + evobj.srcElement);
ok(evobj.type === "dataavailable", "evobj.type = " + evobj.type);
}
function runTests() {
try {
ondataavailable_test();
}catch(e) {
ok(false, "Got an exception: " + e.message);
}
external.reportSuccess();
}
</script>
</head>
<body onload="runTests()">
<div id="divid"></div>
</body>
</html>