diff options
Diffstat (limited to 'testing/web-platform/tests/custom-elements/ElementInternals-accessibility.html')
-rw-r--r-- | testing/web-platform/tests/custom-elements/ElementInternals-accessibility.html | 80 |
1 files changed, 80 insertions, 0 deletions
diff --git a/testing/web-platform/tests/custom-elements/ElementInternals-accessibility.html b/testing/web-platform/tests/custom-elements/ElementInternals-accessibility.html new file mode 100644 index 0000000000..8a8f1c9aea --- /dev/null +++ b/testing/web-platform/tests/custom-elements/ElementInternals-accessibility.html @@ -0,0 +1,80 @@ +<!DOCTYPE HTML> +<script src="/resources/testharness.js"></script> +<script src="/resources/testharnessreport.js"></script> +<script> +class TestElement extends HTMLElement { + constructor() { + super(); + this._internals = this.attachInternals(); + } + + get internals() { + return this._internals; + } + + set internals(val) { + throw "Can't set internals!"; + } +} +customElements.define("test-element", TestElement); +</script> + +<test-element id= "testElement"></test-element> + +<script> +const element = document.getElementById("testElement"); +const properties = [ + "role", + "ariaActiveDescendantElement", + "ariaAtomic", + "ariaAutoComplete", + "ariaBusy", + "ariaChecked", + "ariaColCount", + "ariaColIndex", + "ariaColSpan", + "ariaControlsElements", + "ariaCurrent", + "ariaDescribedByElements", + "ariaDetailsElements", + "ariaDisabled", + "ariaErrorMessageElements", + "ariaExpanded", + "ariaFlowToElements", + "ariaHasPopup", + "ariaHidden", + "ariaInvalid", + "ariaKeyShortcuts", + "ariaLabel", + "ariaLabelledByElements", + "ariaLevel", + "ariaLive", + "ariaModal", + "ariaMultiLine", + "ariaMultiSelectable", + "ariaOrientation", + "ariaOwnsElements", + "ariaPlaceholder", + "ariaPosInSet", + "ariaPressed", + "ariaReadOnly", + "ariaRelevant", + "ariaRequired", + "ariaRoleDescription", + "ariaRowCount", + "ariaRowIndex", + "ariaRowSpan", + "ariaSelected", + "ariaSort", + "ariaValueMax", + "ariaValueMin", + "ariaValueNow", + "ariaValueText" +]; +for (const property of properties) { + test(() => { + assert_inherits(element.internals, property); + }, property + " is defined in ElementInternals"); +} +test(() => assert_false('ariaErrorMessageElement' in element.internals), 'ariaErrorMessageElement is not defined in ElementInternals') +</script> |