Bug 237448

Summary: REGRESSION(r290752) [ iPad ] 10X picture-in-picture (layout-tests) are constant text failures and timeouts.
Product: WebKit Reporter: Robert Jenner <jenner>
Component: WebKit Misc.Assignee: Nobody <webkit-unassigned>
Status: RESOLVED FIXED    
Severity: Normal CC: pvollan, webkit-bot-watchers-bugzilla, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=237227

Description Robert Jenner 2022-03-03 15:23:10 PST
The following 10 picture-in-picture layout-tests are constant text failures or timeouts on iPad:

FAILURES: 
media/picture-in-picture/picture-in-picture-api-enter-pip-1.html
media/picture-in-picture/picture-in-picture-api-enter-pip-2.html
media/picture-in-picture/picture-in-picture-api-enter-pip-3.html
media/picture-in-picture/picture-in-picture-api-enter-pip-4.html
media/picture-in-picture/picture-in-picture-api-pip-window.html
media/picture-in-picture/picture-in-picture-window-aspect-ratio.html
platform/ipad/media/modern-media-controls/pip-support/pip-support-enabled.html

TIMEOUTS: 
media/picture-in-picture/picture-in-picture-api-exit-pip-1.html
media/picture-in-picture/picture-in-picture-api-events.html
media/picture-in-picture/picture-in-picture-api-css-selector.html

HISTORY:
https://results.webkit.org/?suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&suite=layout-tests&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-css-selector.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-enter-pip-1.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-enter-pip-2.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-enter-pip-3.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-enter-pip-4.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-events.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-exit-pip-1.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-api-pip-window.html&test=media%2Fpicture-in-picture%2Fpicture-in-picture-window-aspect-ratio.html&test=platform%2Fipad%2Fmedia%2Fmodern-media-controls%2Fpip-support%2Fpip-support-enabled.html
Comment 1 Robert Jenner 2022-03-03 15:27:21 PST
media/picture-in-picture/picture-in-picture-api-enter-pip-1.html
media/picture-in-picture/picture-in-picture-api-enter-pip-2.html
media/picture-in-picture/picture-in-picture-api-enter-pip-3.html

All have this DIFF:
 RUN(internals.setMockVideoPresentationModeEnabled(true))
 RUN(video.src = findMediaFile("video", "../content/test"))
 EVENT(canplaythrough)
-EXPECTED (error.name == 'NotAllowedError') OK
+EXPECTED (error.name == 'NotAllowedError'), OBSERVED 'NotSupportedError' FAIL
 END OF TEST



media/picture-in-picture/picture-in-picture-api-enter-pip-4.html
media/picture-in-picture/picture-in-picture-api-pip-window.html
media/picture-in-picture/picture-in-picture-window-aspect-ratio.html

All have this DIFF:
 RUN(internals.setMockVideoPresentationModeEnabled(true))
 RUN(video.src = findMediaFile("video", "../content/test"))
 EVENT(canplaythrough)
+request Picture-in-Picture does not resolve on user click. FAIL
 END OF TEST

and platform/ipad/media/modern-media-controls/pip-support/pip-support-enabled.html

has this DIFF:
 On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
 
 
-PASS mediaController.controls.pipButton.enabled is true
+FAIL mediaController.controls.pipButton.enabled should be true. Was false.
 PASS mediaController.controls.pipButton.enabled is false
 
 PASS successfullyParsed is true
Comment 2 Robert Jenner 2022-03-03 15:32:43 PST
You can also see that these are marked as pre-existing failures on EWS, and is significantly slowing down that queue:

https://ews-build.webkit.org/#/builders/68

I was also able to reproduce all of these failures/timeouts at iOS15/iPadOS 15 Production ToT using the following test:

run-webkit-tests --ipad-simulator <test goes here> 

I was able to also reproduce them back to r290752, and not at r290751. Also, changes at r290752 do directly deal with picture and picture controller. So r290752 is our regression point here.

https://github.com/WebKit/WebKit/commit/b0927c0e0ea0c517a9b07f0e6bc8729eb7af0781
Comment 3 Radar WebKit Bug Importer 2022-03-03 15:32:52 PST
<rdar://problem/89781215>
Comment 4 Robert Jenner 2022-03-03 15:48:18 PST
Resolved by reverting here:

https://trac.webkit.org/changeset/290798/webkit