Bug 203614 - Picture-in-Picture layout test cases interfere with each other
Summary: Picture-in-Picture layout test cases interfere with each other
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Media (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Peng Liu
URL:
Keywords: InRadar
Depends on:
Blocks: 182688
  Show dependency treegraph
 
Reported: 2019-10-30 10:13 PDT by Peng Liu
Modified: 2019-11-01 08:57 PDT (History)
14 users (show)

See Also:


Attachments
Patch (21.99 KB, patch)
2019-10-31 21:19 PDT, Peng Liu
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Peng Liu 2019-10-30 10:13:40 PDT
When we run multiple picture-in-picture layout test cases simultaneously, they will interfere with each other because they share the PiP implementation in AVKit/CoreMedia. We need to update the test runner to support running them simultaneously.

This issue impacts following layout test cases:
media/picture-in-picture-api-enter-pip-4.html
media/picture-in-picture-api-exit-pip-1.html
media/picture-in-picture-api-pip-events.html
media/picture-in-picture-api-pip-window.html
media/picture-in-picture-interruption.html
Comment 1 Jonathan Bedard 2019-10-30 10:24:19 PDT
I think what this comes down to is that these tests should be API tests, not layout tests. Layout tests MUST be able to be run in parallel, we don't have that same limitation on API tests. Unless you want to have a sort of mock PiP implementation (which seems complicated and messy) I think the answer here is API tests.
Comment 2 Jer Noble 2019-10-30 10:45:47 PDT
API tests are necessary but not sufficient. It's a well accepted practice to include "mock" implementations of platform features in order to 1) test the WebCore implementation of specifications even on systems where there is no platform support for those features, and 2) be able to control the simulated platform feature from the test itself.

On the other hand, the API tests can indeed test the end-to-end implementation of a feature all the way from the platform up to the chrome, and we should also have API tests for Picture-in-Picture.  But a "mock" for pip is still a good idea.
Comment 3 Radar WebKit Bug Importer 2019-10-30 12:45:44 PDT
<rdar://problem/56754650>
Comment 4 Peng Liu 2019-10-31 21:19:50 PDT
Created attachment 382548 [details]
Patch
Comment 5 WebKit Commit Bot 2019-11-01 08:57:42 PDT
Comment on attachment 382548 [details]
Patch

Clearing flags on attachment: 382548

Committed r251920: <https://trac.webkit.org/changeset/251920>
Comment 6 WebKit Commit Bot 2019-11-01 08:57:43 PDT
All reviewed patches have been landed.  Closing bug.