diff --git a/lib/rules/template-no-aria-unsupported-elements.js b/lib/rules/template-no-aria-unsupported-elements.js index 2def3edb42..5f0c7e269c 100644 --- a/lib/rules/template-no-aria-unsupported-elements.js +++ b/lib/rules/template-no-aria-unsupported-elements.js @@ -18,7 +18,8 @@ module.exports = { }, create(context) { - // Elements that don't support ARIA + // Elements that don't support ARIA per the W3C ARIA in HTML spec. + // Includes metadata/structural elements that have no UI representation. const ELEMENTS_WITHOUT_ARIA_SUPPORT = new Set([ 'meta', 'html', diff --git a/tests/lib/rules/template-no-aria-unsupported-elements.js b/tests/lib/rules/template-no-aria-unsupported-elements.js index c3fb87648e..57aaaad674 100644 --- a/tests/lib/rules/template-no-aria-unsupported-elements.js +++ b/tests/lib/rules/template-no-aria-unsupported-elements.js @@ -11,6 +11,11 @@ ruleTester.run('template-no-aria-unsupported-elements', rule, { '', '', '', + // No ARIA attributes — these are fine + '', + '', + '', + '', ], invalid: [ @@ -29,5 +34,30 @@ ruleTester.run('template-no-aria-unsupported-elements', rule, { output: null, errors: [{ messageId: 'unsupported' }], }, + { + code: '', + output: null, + errors: [{ messageId: 'unsupported' }], + }, + { + code: '', + output: null, + errors: [{ messageId: 'unsupported' }], + }, + { + code: '', + output: null, + errors: [{ messageId: 'unsupported' }], + }, + { + code: '', + output: null, + errors: [{ messageId: 'unsupported' }], + }, + { + code: '', + output: null, + errors: [{ messageId: 'unsupported' }], + }, ], });