-
Notifications
You must be signed in to change notification settings - Fork 3.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[CI] Enable audio tests on Chrome and Firefox #23665
base: main
Are you sure you want to change the base?
Conversation
7c2c85f
to
065759d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice!
Does the test pass locally for you now?
Yes, running with the browser flags documented earlier (or having interaction). I'll test all of the parameterised tests tomorrow, I didn't check all variants. |
Now checked, and yes, all the parameterised I'll work my way through the other browser tests next week now. It would be useful to have #23659 merged (which doesn't affect anything other than my code) so I can move all the browser audio tests to use the same pattern.
emscripten/.circleci/config.yml Line 309 in 6fd5a1f
I removed EDIT: answering myself, it looks like there's no virtualised audio, given the assert: I'll add code to enumerate the hardware (if JS allows this). More notes:
|
The latest flags for Chrome I tried appear to work, with the AW tests for regular Chrome passing: For Firefox it's failing as expected since I've not added its fake audio flags ( |
command: | | ||
export EMTEST_BROWSER="/usr/bin/google-chrome $CHROME_FLAGS_BASE $CHROME_FLAGS_HEADLESS $CHROME_FLAGS_WASM $CHROME_FLAGS_NOCACHE" | ||
export EMTEST_BROWSER="/usr/bin/google-chrome $CHROME_FLAGS_BASE $CHROME_FLAGS_HEADLESS $CHROME_FLAGS_WASM $CHROME_FLAGS_NOCACHE $CHROME_FLAGS_AUDIO" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If we make this change should we also remove the EMTEST_LACKS_SOUND_HARDWARE
setting above?
I'm kind of inclined to make this change as its one separate PR, e.g. [CI] Enable audio testing on chrome
?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't have much time today so it was mostly experimenting and coming back to it, but:
- I'll remove the
EMTEST_LACKS_SOUND_HARDWARE
✅ - I'll rename to match its new purpose (I wasn't sure what I'd achieve when starting) ✅
- I'll disable all the wasm64 and 2GB tests with audio for now
Is it fine to always enable the dummy sound hardware and bypass the media interaction? I can't think what this would break (and where real sound hardware is present its used as a preference, at least from my manual testing).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I imagine enabling dummy sounds hardware and bypass the interaction check should be fine for all out tests..
5483e24
to
f9a781b
Compare
Hmm, FF still broken. To do:
|
#ifdef TEST_AND_EXIT | ||
// We're in the test harness and exiting is via main_thread_tls_access() | ||
emscripten_exit_with_live_runtime(); | ||
#endif |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I was thinking or a separate PR to enable audio testing CI.
PR1: enable audio testing in CI
PR2: fix audio worklet test so they fail correctly
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure, NP. I’ll see how I get on with FF on Monday but I might split it for Chrome first too (I set up a VM with the same Debian and FF and so far, even with no audio device, it doesn’t fail; left to try is headless).
Work-in-progress for #23131.
Confirmed that they're failing, now addingWorking as expected after retesting, I'll propagate the changes to the other AW tests (and move to@requires_sound_hardware
and retesting.btest_exit
in the process). The current failures are unrelated (interestingly, if I test early morning CET I don't get this level of flakiness, it's very much an afternoon thing).