blob: 11177c004857944017ed8fdc8301d998fae81810 [file] [log] [blame]
<!DOCTYPE html>
<script src="../../../resources/testharness.js"></script>
<script src="../../../resources/testharnessreport.js"></script>
<body>
<script>
test(function () {
"use strict";
class Foo extends HTMLDivElement {
static staticFunction () { return "static function called"; }
}
var customFoo = document.registerElement("custom-foo", {
prototype: Foo.prototype,
});
assert_equals(Object.getPrototypeOf(customFoo), Foo,
'generated constructor prototype should be base element constructor');
assert_equals(customFoo.staticFunction(), "static function called",
'static function should be called using inherited element');
assert_equals(Object.getPrototypeOf(customFoo).__proto__, HTMLDivElement,
'prototype chain should have base constructor\'s prototype');
}, 'should inherit from passed constructor');
</script>