diff --git a/test/checks/shared/presentational-role.js b/test/checks/shared/presentational-role.js
index 74a338b3cc..3d8c3cb674 100644
--- a/test/checks/shared/presentational-role.js
+++ b/test/checks/shared/presentational-role.js
@@ -62,6 +62,17 @@ describe('presentational-role', () => {
assert.deepEqual(checkContext._data.messageKey, 'both');
});
+ it('does not trigger conflict resolution for a global aria attribute set via element internals', () => {
+ // internals do not participate in role conflict resolution; no browser
+ // supports it yet (see issue #5162), so the presentational role sticks
+ const vNode = queryFixture(
+ 'x'
+ );
+
+ assert.isTrue(checkEvaluate.call(checkContext, null, null, vNode));
+ assert.deepEqual(checkContext._data.role, 'none');
+ });
+
it('should return false for iframe element with role=none and title', () => {
const vNode = queryFixture(
''