Make semantics/interfaces.html more extensible.

This commit is contained in:
Ms2ger 2015-04-23 15:00:42 +02:00
parent f69a315123
commit 474a4a5dcb

View file

@ -9,22 +9,24 @@
<script src=interfaces.js></script> <script src=interfaces.js></script>
<div id="log"></div> <div id="log"></div>
<script> <script>
test(function() { function do_test(local_name, iface) {
elements.forEach(function(a) { test(function() {
test(function() { var e = document.createElement(local_name), i = "HTML" + iface + "Element";
var e = document.createElement(a[0]), i = "HTML" + a[1] + "Element"; assert_class_string(e, i,
assert_class_string(e, i, "Element " + local_name + " should have " + i +
"Element " + a[0] + " should have " + i + " as its primary interface.");
" as its primary interface."); assert_true(e instanceof window[i],
assert_true(e instanceof window[i], "Element " + local_name + " should implement " + i + ".");
"Element " + a[0] + " should implement " + i + "."); assert_true(e instanceof HTMLElement,
assert_true(e instanceof HTMLElement, "Element " + local_name + " should implement HTMLElement.");
"Element " + a[0] + " should implement HTMLElement."); assert_true(e instanceof Element,
assert_true(e instanceof Element, "Element " + local_name + " should implement Element.");
"Element " + a[0] + " should implement Element."); assert_true(e instanceof Node,
assert_true(e instanceof Node, "Element " + local_name + " should implement Node.");
"Element " + a[0] + " should implement Node."); }, "Interfaces for " + local_name);
}, "Interfaces for " + a[0]) }
})
elements.forEach(function(a) {
do_test(a[0], a[1]);
}) })
</script> </script>