WebKit Bugzilla
Attachment 371080 Details for
Bug 198432
: REGRESSION: WebKit.InteractionDeadlockAfterCrash and SynchronousTimeoutTests.UnresponsivePageDoesNotCausePositionInformationToHangUI API tests are failing
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-198432-20190531133417.patch (text/plain), 5.47 KB, created by
Tim Horton
on 2019-05-31 13:34:18 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Tim Horton
Created:
2019-05-31 13:34:18 PDT
Size:
5.47 KB
patch
obsolete
>Subversion Revision: 245863 >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index a2ccc8f857e8412aa58edd3085f69833e428f2b1..94e1a1a8d87f8c0334d1976f8cbe651a16d64f67 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,18 @@ >+2019-05-31 Tim Horton <timothy_horton@apple.com> >+ >+ REGRESSION: WebKit.InteractionDeadlockAfterCrash and SynchronousTimeoutTests.UnresponsivePageDoesNotCausePositionInformationToHangUI API tests are failing >+ https://bugs.webkit.org/show_bug.cgi?id=198432 >+ <rdar://problem/51266033> >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ * TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm: >+ (TEST): >+ (recursiveFindHighlightLongPressRecognizer): Deleted. >+ * TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm: >+ (TestWebKitAPI::TEST): >+ (TestWebKitAPI::recursiveFindHighlightLongPressRecognizer): Deleted. >+ > 2019-05-29 Ryan Haddad <ryanhaddad@apple.com> > > Unreviewed, rolling out r245857. >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm >index be6e89578ad9b9b103ce352fc0ba69f4d937e543..3e73c711dd9594dfd642a31aa0573c53befb74d0 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm >@@ -33,7 +33,7 @@ > #import <WebKit/WKWebViewPrivate.h> > #import <wtf/RetainPtr.h> > >-@interface NSObject () >+@interface WKContentView () > > - (BOOL)hasSelectablePositionAtPoint:(CGPoint)point; > >@@ -41,38 +41,17 @@ @end > > #if PLATFORM(IOS_FAMILY) > >-static UIGestureRecognizer *recursiveFindHighlightLongPressRecognizer(UIView *view) >-{ >- for (UIGestureRecognizer *recognizer in view.gestureRecognizers) { >- if ([recognizer isKindOfClass:NSClassFromString(@"_UIWebHighlightLongPressGestureRecognizer")]) >- return recognizer; >- } >- >- for (UIView *subview in view.subviews) { >- UIGestureRecognizer *recognizer = recursiveFindHighlightLongPressRecognizer(subview); >- if (recognizer) >- return recognizer; >- } >- >- return nil; >-} >- > TEST(WebKit, InteractionDeadlockAfterCrash) > { > RetainPtr<WKWebViewConfiguration> configuration = adoptNS([[WKWebViewConfiguration alloc] init]); > >- RetainPtr<WKWebView> webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configuration.get()]); >+ RetainPtr<TestWKWebView> webView = adoptNS([[TestWKWebView alloc] initWithFrame:NSMakeRect(0, 0, 100, 100) configuration:configuration.get()]); > > [webView loadHTMLString:@"test" baseURL:nil]; > [webView _test_waitForDidFinishNavigation]; > >- UIGestureRecognizer *highlightLongPressRecognizer = recursiveFindHighlightLongPressRecognizer(webView.get()); >- UIView *interactionView = highlightLongPressRecognizer.view; >- EXPECT_NOT_NULL(highlightLongPressRecognizer); >- > // This will start an asynchronous interaction information update. >- BOOL shouldBegin = [[highlightLongPressRecognizer delegate] gestureRecognizerShouldBegin:highlightLongPressRecognizer]; >- EXPECT_TRUE(shouldBegin); >+ [webView _simulateLongPressActionAtLocation:CGPointMake(50, 50)]; > > [webView _killWebContentProcessAndResetState]; > >@@ -80,7 +59,7 @@ TEST(WebKit, InteractionDeadlockAfterCrash) > [webView _test_waitForDidFinishNavigation]; > > // This will synchronously ensure we have up-to-date interaction information. >- [interactionView hasSelectablePositionAtPoint:CGPointZero]; >+ [[webView wkContentView] hasSelectablePositionAtPoint:CGPointZero]; > } > > #endif >diff --git a/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm b/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm >index 418d3fa432cf88b5ad6915c8add73c4b69ab71b2..19e3b293ed6d47fbdfcf923751fa78c8be7843f6 100644 >--- a/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm >+++ b/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm >@@ -34,43 +34,23 @@ > > using namespace TestWebKitAPI; > >-@interface NSObject () >+@interface WKContentView () > > - (BOOL)hasSelectablePositionAtPoint:(CGPoint)point; > > @end > > namespace TestWebKitAPI { >- >-static UIGestureRecognizer *recursiveFindHighlightLongPressRecognizer(UIView *view) >-{ >- for (UIGestureRecognizer *recognizer in view.gestureRecognizers) { >- if ([recognizer isKindOfClass:NSClassFromString(@"_UIWebHighlightLongPressGestureRecognizer")]) >- return recognizer; >- } >- >- for (UIView *subview in view.subviews) { >- UIGestureRecognizer *recognizer = recursiveFindHighlightLongPressRecognizer(subview); >- if (recognizer) >- return recognizer; >- } >- >- return nil; >-} >- >+ > TEST(SynchronousTimeoutTests, UnresponsivePageDoesNotCausePositionInformationToHangUI) > { > auto webView = adoptNS([[TestWKWebView alloc] initWithFrame:CGRectMake(0, 0, 320, 500)]); > [webView synchronouslyLoadTestPageNamed:@"simple"]; >- >- UIGestureRecognizer *highlightLongPressRecognizer = recursiveFindHighlightLongPressRecognizer(webView.get()); >- UIView *interactionView = highlightLongPressRecognizer.view; >- EXPECT_NOT_NULL(highlightLongPressRecognizer); >- >+ > [webView evaluateJavaScript:@"while(1);" completionHandler:nil]; > > // The test passes if we can long press and still finish the test. >- [interactionView hasSelectablePositionAtPoint:CGPointMake(100, 100)]; >+ [[webView wkContentView] hasSelectablePositionAtPoint:CGPointMake(100, 100)]; > } > >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 198432
:
371080
|
371084