Skip to content

tests: Bypass native ariaNotify in polyfill tests#54

Merged
smockle merged 8 commits into
mainfrom
smockle/firefox-arianotify
May 29, 2026
Merged

tests: Bypass native ariaNotify in polyfill tests#54
smockle merged 8 commits into
mainfrom
smockle/firefox-arianotify

Conversation

@smockle
Copy link
Copy Markdown
Collaborator

@smockle smockle commented May 29, 2026

Problem

Native support for ariaNotify shipped in Firefox 150.0: https://www.firefox.com/en-US/firefox/150.0/releasenotes/. As a result, our existing tests—running in Firefox—no longer test the polyfill itself.

Solution

  • Support loading the ariaNotify polyfill even in browsers with native ariaNotify support, to enable polyfill testing (both Web Test Runner and Guidepup).
  • Use Chrome for browser-backed tests because it is preinstalled on GitHub Actions runners and Web Test Runner’s default. This reduces configuration, browser installation time, and failure points.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@smockle smockle changed the title Force ariaNotify polyfill in tests tests: Support loading ariaNotify polyfill in browsers with native support May 29, 2026
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@smockle smockle changed the title tests: Support loading ariaNotify polyfill in browsers with native support tests: Bypass native ariaNotify in polyfill tests May 29, 2026
smockle and others added 5 commits May 29, 2026 15:30
@smockle smockle changed the title tests: Bypass native ariaNotify in polyfill tests tests: Bypass native ariaNotify in polyfill tests May 29, 2026
@smockle smockle marked this pull request as ready for review May 29, 2026 19:49
@smockle smockle requested a review from a team as a code owner May 29, 2026 19:49
@smockle smockle enabled auto-merge May 29, 2026 19:49
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the test harness to ensure automated tests continue exercising the ariaNotify polyfill even in browsers that ship a native ariaNotify, and aligns browser-backed tests around Chrome/Chromium defaults.

Changes:

  • Inject a test-only “bypass native ariaNotify” shim into Web Test Runner HTML tests and Guidepup Playwright contexts.
  • Update the polyfill to optionally override native ariaNotify when a test-only global bypass flag is set.
  • Switch Playwright projects to run against Google Chrome (channel) and simplify test scripts by removing explicit Playwright browser installs.
Show a summary per file
File Description
web-test-runner.config.js Injects the bypass shim and polyfill into WTR HTML tests; removes explicit Firefox Playwright launcher setup.
tests/guidepup/voiceover.spec.mjs Adds a shared init script to bypass native ariaNotify for macOS VoiceOver tests.
tests/guidepup/nvda.spec.mjs Adds a shared init script to bypass native ariaNotify for Windows NVDA tests.
tests/bypass-native-arianotify.js New test-only shim that forces failures if tests hit native ariaNotify and sets a bypass flag for the polyfill.
playwright.config.mjs Switches Playwright project to Google Chrome (channel).
package.json Removes explicit playwright install firefox from test scripts.
arianotify-polyfill.js Adds support for a test-only bypass flag and uses defineProperty to override native ariaNotify when requested.

Copilot's findings

Tip

Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

  • Files reviewed: 8/8 changed files
  • Comments generated: 1

Comment thread package.json
Copy link
Copy Markdown
Contributor

@JoyceZhu JoyceZhu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great!

@smockle smockle merged commit ee20f31 into main May 29, 2026
8 of 9 checks passed
@smockle smockle deleted the smockle/firefox-arianotify branch May 29, 2026 21:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants