Jacek Caban : mshtml: Added more events tests.

Alexandre Julliard julliard at winehq.org
Thu Sep 13 14:39:21 CDT 2012


Module: wine
Branch: master
Commit: fae1fff830f4ba4fda0d400ce59ad58382f8cc3c
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=fae1fff830f4ba4fda0d400ce59ad58382f8cc3c

Author: Jacek Caban <jacek at codeweavers.com>
Date:   Thu Sep 13 12:29:05 2012 +0200

mshtml: Added more events tests.

---

 dlls/mshtml/tests/events.html |   52 +++++++++++++++++++++++++++++++++++++++++
 dlls/mshtml/tests/rsrc.rc     |    3 ++
 dlls/mshtml/tests/script.c    |    1 +
 3 files changed, 56 insertions(+), 0 deletions(-)

diff --git a/dlls/mshtml/tests/events.html b/dlls/mshtml/tests/events.html
new file mode 100644
index 0000000..fbac741
--- /dev/null
+++ b/dlls/mshtml/tests/events.html
@@ -0,0 +1,52 @@
+<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);
+    }
+
+    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);
+}
+
+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>
diff --git a/dlls/mshtml/tests/rsrc.rc b/dlls/mshtml/tests/rsrc.rc
index fb74c45..52b4534 100644
--- a/dlls/mshtml/tests/rsrc.rc
+++ b/dlls/mshtml/tests/rsrc.rc
@@ -24,3 +24,6 @@ jstest.html HTML "jstest.html"
 
 /* @makedep: vbtest.html */
 vbtest.html HTML "vbtest.html"
+
+/* @makedep: events.html */
+events.html HTML "events.html"
diff --git a/dlls/mshtml/tests/script.c b/dlls/mshtml/tests/script.c
index b5bd91b..59d03dd 100644
--- a/dlls/mshtml/tests/script.c
+++ b/dlls/mshtml/tests/script.c
@@ -2745,6 +2745,7 @@ static void run_js_tests(void)
     run_js_script("jstest.html");
     run_js_script("exectest.html");
     run_js_script("vbtest.html");
+    run_js_script("events.html");
 }
 
 static BOOL init_registry(BOOL init)




More information about the wine-cvs mailing list