Title: [245988] trunk/Tools
Revision
245988
Author
timothy_hor...@apple.com
Date
2019-05-31 15:02:14 -0700 (Fri, 31 May 2019)

Log Message

REGRESSION: WebKit.InteractionDeadlockAfterCrash and SynchronousTimeoutTests.UnresponsivePageDoesNotCausePositionInformationToHangUI API tests are failing
https://bugs.webkit.org/show_bug.cgi?id=198432
<rdar://problem/51266033>

Reviewed by Wenson Hsieh.

* TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
(TEST):
(recursiveFindHighlightLongPressRecognizer): Deleted.
* TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm:
(TestWebKitAPI::TEST):
(TestWebKitAPI::recursiveFindHighlightLongPressRecognizer): Deleted.

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (245987 => 245988)


--- trunk/Tools/ChangeLog	2019-05-31 21:56:37 UTC (rev 245987)
+++ trunk/Tools/ChangeLog	2019-05-31 22:02:14 UTC (rev 245988)
@@ -1,3 +1,18 @@
+2019-05-31  Tim Horton  <timothy_hor...@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 Wenson Hsieh.
+
+        * TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm:
+        (TEST):
+        (recursiveFindHighlightLongPressRecognizer): Deleted.
+        * TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm:
+        (TestWebKitAPI::TEST):
+        (TestWebKitAPI::recursiveFindHighlightLongPressRecognizer): Deleted.
+
 2019-05-31  Alex Christensen  <achristen...@webkit.org>
 
         URLParser::parseIPv6Host should properly parse 0's around compression

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm (245987 => 245988)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm	2019-05-31 21:56:37 UTC (rev 245987)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/InteractionDeadlockAfterCrash.mm	2019-05-31 22:02:14 UTC (rev 245988)
@@ -33,46 +33,23 @@
 #import <WebKit/WKWebViewPrivate.h>
 #import <wtf/RetainPtr.h>
 
-@interface NSObject ()
+#if PLATFORM(IOS_FAMILY)
 
+@interface WKContentView ()
 - (BOOL)hasSelectablePositionAtPoint:(CGPoint)point;
-
 @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 +57,7 @@
     [webView _test_waitForDidFinishNavigation];
 
     // This will synchronously ensure we have up-to-date interaction information.
-    [interactionView hasSelectablePositionAtPoint:CGPointZero];
+    [[webView wkContentView] hasSelectablePositionAtPoint:CGPointZero];
 }
 
 #endif

Modified: trunk/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm (245987 => 245988)


--- trunk/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm	2019-05-31 21:56:37 UTC (rev 245987)
+++ trunk/Tools/TestWebKitAPI/Tests/ios/SynchronousTimeoutTests.mm	2019-05-31 22:02:14 UTC (rev 245988)
@@ -32,48 +32,23 @@
 
 #if PLATFORM(IOS_FAMILY)
 
-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)];
 }
 
-    
 } // namespace TestWebKitAPI
 
 #endif // PLATFORM(IOS_FAMILY)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to