Bug 308494
| Summary: | [macOS] media/remote-control-command-is-user-gesture.html is a flaky timeout | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Diego De La Toba <d_delatoba> |
| Component: | New Bugs | Assignee: | Diego De La Toba <d_delatoba> |
| Status: | NEW | ||
| Severity: | Normal | CC: | webkit-bot-watchers-bugzilla, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Diego De La Toba
media/remote-control-command-is-user-gesture.html is a flaky timeout on macOS release and debug. Failure does not show on bots.
HISTORY:
https://results.webkit.org/?suite=layout-tests&test=media%2Fremote-control-command-is-user-gesture.html
DIFF:
--- /Volumes/Data/Builds/Mac/Production/TestBuild308046@main/layout-test-results/media/remote-control-command-is-user-gesture-expected.txt
+++ /Volumes/Data/Builds/Mac/Production/TestBuild308046@main/layout-test-results/media/remote-control-command-is-user-gesture-actual.txt
@@ -1,3 +1,5 @@
+FAIL: Timed out waiting for notifyDone to be called
+
Test that a remote control command is treated as a user gesture.
@@ -12,6 +14,4 @@
* Send a play command, it should succeed.
RUN(internals.postRemoteControlCommand('play'))
-EVENT(timeupdate)
-END OF TEST
REPRODUCTION:
I was able to reproduce this on macOS 26.2 release and debug with the following:
run-webkit-tests --no-retry --no-show-results --iterations=2000 --force -f media/remote-control-command-is-user-gesture.html
I will mark expectations as pass timeout while this pends investigation
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Radar WebKit Bug Importer
<rdar://problem/171016280>
Diego De La Toba
Pull request: https://github.com/WebKit/WebKit/pull/59265
EWS
Test gardening commit 308075@main (caf764bd989d): <https://commits.webkit.org/308075@main>
Reviewed commits have been landed. Closing PR #59265 and removing active labels.
Diego De La Toba
The test is timing out intermittently because it uses timeupdate (line 19) to detect when video playback starts.
Per the HTML5 spec, timeupdate events fire periodically in ~250ms intervals during playback, not immediately when playback starts. Under system load or with --run-singly it appears that timeupdate doesn't fire within the expected window.
A potential solution for this is to change waitForEventAndEnd('timeupdate') to waitForEventAndEnd('playing') since the playing event fires immediately when playback begins per spec.
Spec: https://html.spec.whatwg.org/multipage/media.html
Diego De La Toba
Pull request: https://github.com/WebKit/WebKit/pull/59273