diff --git a/packages/playwright-core/src/server/injected/injectedScript.ts b/packages/playwright-core/src/server/injected/injectedScript.ts index 867f89ed94..21fcca69a4 100644 --- a/packages/playwright-core/src/server/injected/injectedScript.ts +++ b/packages/playwright-core/src/server/injected/injectedScript.ts @@ -1322,7 +1322,7 @@ export class InjectedScript { } else if (expression === 'to.have.accessible.description') { received = getElementAccessibleDescription(element, false /* includeHidden */); } else if (expression === 'to.have.accessible.error.message') { - received = getElementAccessibleErrorMessage(element, false /* includeHidden */); + received = getElementAccessibleErrorMessage(element); } else if (expression === 'to.have.role') { received = getAriaRole(element) || ''; } else if (expression === 'to.have.title') { diff --git a/packages/playwright-core/src/server/injected/roleUtils.ts b/packages/playwright-core/src/server/injected/roleUtils.ts index 8ad92db4d8..727bf5487f 100644 --- a/packages/playwright-core/src/server/injected/roleUtils.ts +++ b/packages/playwright-core/src/server/injected/roleUtils.ts @@ -461,15 +461,14 @@ export function getElementAccessibleDescription(element: Element, includeHidden: return accessibleDescription; } -export function getElementAccessibleErrorMessage(element: Element, includeHidden: boolean): string { - const cache = includeHidden ? cacheAccessibleErrorMessageHidden : cacheAccessibleErrorMessage; - let accessibleErrorMessage = cache?.get(element); +export function getElementAccessibleErrorMessage(element: Element): string { + const cache = cacheAccessibleErrorMessage; + let accessibleErrorMessage = cacheAccessibleErrorMessage?.get(element); if (accessibleErrorMessage === undefined) { accessibleErrorMessage = ''; const ariaInvalid = element.getAttribute('aria-invalid'); - // const isAriaInvalid = ariaInvalid === 'true' || (ariaInvalid !== 'false' && ariaInvalid !== null && ariaInvalid !== ''); const isAriaInvalid = ariaInvalid !== null && ariaInvalid.toLowerCase() !== 'false'; if (isAriaInvalid) { const errorMessageId = element.getAttribute('aria-errormessage'); @@ -481,7 +480,6 @@ export function getElementAccessibleErrorMessage(element: Element, includeHidden if (errorElement) { accessibleErrorMessage = asFlatString( getTextAlternativeInternal(errorElement, { - includeHidden, visitedElements: new Set(), embeddedInDescribedBy: { element: errorElement, hidden: isElementHiddenForAria(errorElement) }, }) @@ -1007,7 +1005,6 @@ let cacheAccessibleNameHidden: Map | undefined; let cacheAccessibleDescription: Map | undefined; let cacheAccessibleDescriptionHidden: Map | undefined; let cacheAccessibleErrorMessage: Map | undefined; -let cacheAccessibleErrorMessageHidden: Map | undefined; let cacheIsHidden: Map | undefined; let cachePseudoContentBefore: Map | undefined; let cachePseudoContentAfter: Map | undefined; @@ -1020,7 +1017,6 @@ export function beginAriaCaches() { cacheAccessibleDescription ??= new Map(); cacheAccessibleDescriptionHidden ??= new Map(); cacheAccessibleErrorMessage ??= new Map(); - cacheAccessibleErrorMessageHidden ??= new Map(); cacheIsHidden ??= new Map(); cachePseudoContentBefore ??= new Map(); cachePseudoContentAfter ??= new Map(); @@ -1033,7 +1029,6 @@ export function endAriaCaches() { cacheAccessibleDescription = undefined; cacheAccessibleDescriptionHidden = undefined; cacheAccessibleErrorMessage = undefined; - cacheAccessibleErrorMessageHidden = undefined; cacheIsHidden = undefined; cachePseudoContentBefore = undefined; cachePseudoContentAfter = undefined;