26 lines
900 B
HTML
26 lines
900 B
HTML
<!doctype html>
|
|
<meta charset="utf-8">
|
|
<title>instanceof behavior</title>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
|
|
<iframe></iframe>
|
|
|
|
<script>
|
|
test(function() {
|
|
var obj = Object.create(Element.prototype);
|
|
assert_true(obj instanceof Element);
|
|
assert_true(obj instanceof Node);
|
|
assert_false(obj instanceof Attr);
|
|
}, "Manually-constructed prototype chains are correctly handled by instanceof");
|
|
|
|
test(() => {
|
|
// This tests that the historical override of [[HasInstance]] was removed:
|
|
// https://github.com/heycam/webidl/pull/356
|
|
assert_false(document.body instanceof frames[0].Element);
|
|
}, "instanceof must return false across different globals, for platform objects");
|
|
|
|
test(() => {
|
|
assert_false(EventTarget.hasOwnProperty(Symbol.hasInstance));
|
|
}, "platform objects do not have Symbol.hasInstance installed");
|
|
</script>
|