Title: [240695] trunk/Tools
Revision
240695
Author
[email protected]
Date
2019-01-29 17:16:04 -0800 (Tue, 29 Jan 2019)

Log Message

REGRESSION: ProcessSwap.DoSameSiteNavigationAfterCrossSiteProvisionalLoadStarted Failing on iOS
https://bugs.webkit.org/show_bug.cgi?id=193977
<rdar://problem/47643716>

Reviewed by Geoff Garen.

Update API test to address flakiness on iOS. Instead of doing the last navigation after receiving the
didStartProvisionalLoad, do we right after we answer the navigation policy request. Flakiness was due
to the previous provisional committing *before* we make the last load.

* TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (240694 => 240695)


--- trunk/Tools/ChangeLog	2019-01-30 01:11:07 UTC (rev 240694)
+++ trunk/Tools/ChangeLog	2019-01-30 01:16:04 UTC (rev 240695)
@@ -1,3 +1,17 @@
+2019-01-29  Chris Dumez  <[email protected]>
+
+        REGRESSION: ProcessSwap.DoSameSiteNavigationAfterCrossSiteProvisionalLoadStarted Failing on iOS
+        https://bugs.webkit.org/show_bug.cgi?id=193977
+        <rdar://problem/47643716>
+
+        Reviewed by Geoff Garen.
+
+        Update API test to address flakiness on iOS. Instead of doing the last navigation after receiving the
+        didStartProvisionalLoad, do we right after we answer the navigation policy request. Flakiness was due
+        to the previous provisional committing *before* we make the last load. 
+
+        * TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
+
 2019-01-29  Youenn Fablet  <[email protected]>
 
         Adopt new SPI to evaluate server certificate trust

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm (240694 => 240695)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm	2019-01-30 01:11:07 UTC (rev 240694)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm	2019-01-30 01:16:04 UTC (rev 240695)
@@ -2448,6 +2448,8 @@
     auto delegate = adoptNS([[PSONNavigationDelegate alloc] init]);
     [webView setNavigationDelegate:delegate.get()];
 
+    [webView configuration].preferences.safeBrowsingEnabled = NO;
+
     NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"pson://www.webkit.org/main1.html"]];
     [webView loadRequest:request];
 
@@ -2456,14 +2458,14 @@
 
     auto webkitPID = [webView _webProcessIdentifier];
 
-    didStartProvisionalLoad = false;
-    request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"pson://www.apple.com/main.html"]];
-    [webView loadRequest:request];
+    delegate->decidePolicyForNavigationAction = ^(WKNavigationAction *, void (^decisionHandler)(WKNavigationActionPolicy)) {
+        decisionHandler(WKNavigationActionPolicyAllow);
 
-    TestWebKitAPI::Util::run(&didStartProvisionalLoad);
-    didStartProvisionalLoad = false;
+        delegate->decidePolicyForNavigationAction = nil;
+        [webView loadRequest:[NSURLRequest requestWithURL:[NSURL URLWithString:@"pson://www.webkit.org/main2.html"]]];
+    };
 
-    request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"pson://www.webkit.org/main2.html"]];
+    request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"pson://www.apple.com/main.html"]];
     [webView loadRequest:request];
 
     TestWebKitAPI::Util::run(&done);
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to