summaryrefslogtreecommitdiff
path: root/test/js/verify-instanceofness.html
diff options
context:
space:
mode:
Diffstat (limited to 'test/js/verify-instanceofness.html')
-rw-r--r--test/js/verify-instanceofness.html40
1 files changed, 40 insertions, 0 deletions
diff --git a/test/js/verify-instanceofness.html b/test/js/verify-instanceofness.html
new file mode 100644
index 000000000..631dc99c4
--- /dev/null
+++ b/test/js/verify-instanceofness.html
@@ -0,0 +1,40 @@
+<html>
+ <head><title>Verify instanceof checking</title></head>
+ <body>
+ <h1>Check instanceof behaviour</h1>
+ <table cellpadding=2 border=1>
+ <tr><th>A</th><th>instanceof</th><th>B</th><th>?</th><th>Correct?</th></tr>
+ <script>
+var checks = [
+ [ "window", "Window", true ],
+ [ "document", "HTMLDocument", true ],
+ [ "document.head", "Node", true ],
+ [ "document.getElementsByTagName(\"body\")", "HTMLCollection", true ],
+ [ "document.body", "Window", false ],
+ [ "EventListener", "Object", undefined ],
+];
+
+for (var _check in checks) {
+ var check = checks[_check];
+ document.write("<tr>");
+ document.write("<td>" + check[0] + "</td><td>instanceof</td><td>" + check[1] + "</td>");
+ try {
+ var A = eval(check[0]);
+ var B = eval(check[1]);
+ var C = check[2];
+ var V = A instanceof B;
+ var OK = V == C;
+ document.write("<td>" + V + "</td><td>" + (OK ? "YES" : "<b style=\"color: red\">NO</b>") + "</td>");
+ } catch (e) {
+ if (check[2] == undefined) {
+ document.write("<td>" + e + "</td><td>YES</td>");
+ } else {
+ document.write("<td colspan=2><b style=\"color: red\">" + e + "</b></td>");
+ }
+ }
+ document.write("</tr>");
+}
+ </script>
+ </table>
+ </body>
+</html>