| Summary: | [ iOS iPhone 12 ] fast/hidpi & fast/layers/hidpi tests are flaky text/image failing | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | ayumi_kojima | ||||||||||
| Component: | New Bugs | Assignee: | zalan <zalan> | ||||||||||
| Status: | RESOLVED FIXED | ||||||||||||
| Severity: | Normal | CC: | dino, Morningstar, webkit-bot-watchers-bugzilla, webkit-bug-importer, wenson_hsieh, zalan | ||||||||||
| Priority: | P2 | Keywords: | InRadar | ||||||||||
| Version: | WebKit Nightly Build | ||||||||||||
| Hardware: | iPhone / iPad | ||||||||||||
| OS: | Unspecified | ||||||||||||
| See Also: |
https://bugs.webkit.org/show_bug.cgi?id=232310 https://bugs.webkit.org/show_bug.cgi?id=132766 https://bugs.webkit.org/show_bug.cgi?id=232465 |
||||||||||||
| Attachments: |
|
||||||||||||
|
Description
ayumi_kojima
2021-10-27 09:38:23 PDT
Created attachment 442604 [details]
Image diff
I was able to reproduce the failure at TOT on iOS 15 sim using run-webkit-tests --ios-simulator --exit-after-n-failures 500 --child-processes 1 --test-list <test list>. Created attachment 442619 [details]
Test list (reproduced image failures)
Test list that doesn't include fast/events/ios/rotation/ tests didn't reproduce the image failures. Also, the image failures only occur on iPhone 12. When I tried on iPhone SE (2nd gen), I was not able to reproduce the image failures. Created attachment 442620 [details]
Test list (Didn't reproduce the image failure)
The same image failure is seen on macOS (Bug 132766). This failure is continuing to happen, expectations may need to be set. (In reply to Matteo Flores from comment #9) > This failure is continuing to happen, expectations may need to be set. Set expectations r291230 I can repro it with run-webkit-test --ios-simulator fast/events/ios/rotation/safe-area-insets-during-safari-type-rotation.html fast/hidpi/image-srcset-simple-1x.html All it needs is just a rotation test. Apparently we see deviceScaleFactor == 3 in the test (fast/hidpi/image-srcset-simple-1x.html) when the rotation test runs first. screenScaleFactor(UIScreen *screen) comes back with 3. Test passes fine when this value is hardcoded to 2. [[UIScreen mainScreen] _setScale:2.0]; is called in TestController::platformInitialize but not in-between tests. diff --git a/Tools/WebKitTestRunner/ios/TestControllerIOS.mm b/Tools/WebKitTestRunner/ios/TestControllerIOS.mm index 13c0e9ba6752..142a2c119530 100644 --- a/Tools/WebKitTestRunner/ios/TestControllerIOS.mm +++ b/Tools/WebKitTestRunner/ios/TestControllerIOS.mm @@ -158,6 +158,7 @@ bool TestController::platformResetStateToConsistentValues(const TestOptions& opt [pasteboardConsistencyEnforcer() clearPasteboard]; [[UIApplication sharedApplication] _cancelAllTouches]; [[UIDevice currentDevice] setOrientation:UIDeviceOrientationPortrait animated:NO]; + [[UIScreen mainScreen] _setScale:2.0]; ^^ fixes the test failure. Created attachment 457278 [details]
Patch
Committed r292749 (249533@main): <https://commits.webkit.org/249533@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 457278 [details]. *** Bug 232465 has been marked as a duplicate of this bug. *** |