Title: [293559] trunk/Tools
- Revision
- 293559
- Author
- [email protected]
- Date
- 2022-04-27 20:19:31 -0700 (Wed, 27 Apr 2022)
Log Message
[ iOS ] TestWebKitAPI.IndexedDB.IndexedDBSuspendImminently is a constant timeout
https://bugs.webkit.org/show_bug.cgi?id=239310
<rdar://problem/91721160>
Reviewed by Youenn Fablet.
Message may be received before runTestAndCheckResult(), so we should not unset receivedScriptMessage before
wait.
* TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm:
(runUntilMessageReceived):
(TEST):
(runTestAndCheckResult): Deleted.
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (293558 => 293559)
--- trunk/Tools/ChangeLog 2022-04-28 03:04:58 UTC (rev 293558)
+++ trunk/Tools/ChangeLog 2022-04-28 03:19:31 UTC (rev 293559)
@@ -1,3 +1,19 @@
+2022-04-27 Sihui Liu <[email protected]>
+
+ [ iOS ] TestWebKitAPI.IndexedDB.IndexedDBSuspendImminently is a constant timeout
+ https://bugs.webkit.org/show_bug.cgi?id=239310
+ <rdar://problem/91721160>
+
+ Reviewed by Youenn Fablet.
+
+ Message may be received before runTestAndCheckResult(), so we should not unset receivedScriptMessage before
+ wait.
+
+ * TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm:
+ (runUntilMessageReceived):
+ (TEST):
+ (runTestAndCheckResult): Deleted.
+
2022-04-27 Jonathan Bedard <[email protected]>
[git-webkit] Run style checker
Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm (293558 => 293559)
--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm 2022-04-28 03:04:58 UTC (rev 293558)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/IndexedDBSuspendImminently.mm 2022-04-28 03:19:31 UTC (rev 293559)
@@ -39,7 +39,7 @@
#if PLATFORM(IOS_FAMILY)
-static bool idbAcitivitiesStarted;
+static bool idbActivitiesStarted;
@interface IndexedDBSuspendImminentlyMessageHandler : NSObject <WKScriptMessageHandler>
@end
@@ -48,7 +48,7 @@
- (void)userContentController:(WKUserContentController *)userContentController didReceiveScriptMessage:(WKScriptMessage *)message
{
- idbAcitivitiesStarted = true;
+ idbActivitiesStarted = true;
receivedScriptMessage = true;
lastScriptMessage = message;
}
@@ -55,23 +55,23 @@
@end
-static void runTestAndCheckResult(NSString* expectedResult)
+static void runUntilMessageReceived(NSString* expectedMessage)
{
- receivedScriptMessage = false;
TestWebKitAPI::Util::run(&receivedScriptMessage);
RetainPtr<NSString> string = (NSString *)[lastScriptMessage body];
- EXPECT_WK_STREQ(expectedResult, string.get());
+ EXPECT_WK_STREQ(expectedMessage, string.get());
+ receivedScriptMessage = false;
}
static void keepNetworkProcessActive()
{
[[WKWebsiteDataStore defaultDataStore] fetchDataRecordsOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] completionHandler:^(NSArray<WKWebsiteDataRecord *> *dataRecords) {
- if (!idbAcitivitiesStarted)
+ if (!idbActivitiesStarted)
keepNetworkProcessActive();
}];
}
-// FIXME: https://bugs.webkit.org/show_bug.cgi?id=239310
-TEST(IndexedDB, DISABLED_IndexedDBSuspendImminently)
+
+TEST(IndexedDB, IndexedDBSuspendImminently)
{
readyToContinue = false;
[[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] modifiedSince:[NSDate distantPast] completionHandler:^() {
@@ -86,18 +86,18 @@
auto webView = adoptNS([[WKWebView alloc] initWithFrame:NSMakeRect(0, 0, 800, 600) configuration:configuration.get()]);
NSURLRequest *request = [NSURLRequest requestWithURL:[[NSBundle mainBundle] URLForResource:@"IndexedDBSuspendImminently" withExtension:@"html" subdirectory:@"TestWebKitAPI.resources"]];
- idbAcitivitiesStarted = false;
+ idbActivitiesStarted = false;
[webView loadRequest:request];
keepNetworkProcessActive();
- runTestAndCheckResult(@"Continue");
+ runUntilMessageReceived(@"Continue");
[configuration.get().websiteDataStore _sendNetworkProcessWillSuspendImminently];
[configuration.get().websiteDataStore _sendNetworkProcessDidResume];
- runTestAndCheckResult(@"Expected Abort For Suspension");
- runTestAndCheckResult(@"Expected Success After Resume");
+ runUntilMessageReceived(@"Expected Abort For Suspension");
+ runUntilMessageReceived(@"Expected Success After Resume");
}
static NSString *mainFrameString = @"<script> \
@@ -161,12 +161,12 @@
auto webView = adoptNS([[WKWebView alloc] initWithFrame:NSMakeRect(0, 0, 800, 600) configuration:configuration.get()]);
[webView loadHTMLString:mainFrameString baseURL:[NSURL URLWithString:@"http://webkit.org"]];
- runTestAndCheckResult(@"database is created");
+ runUntilMessageReceived(@"database is created");
[configuration.get().websiteDataStore _sendNetworkProcessWillSuspendImminently];
[configuration.get().websiteDataStore _sendNetworkProcessDidResume];
- runTestAndCheckResult(@"transaction is completed");
+ runUntilMessageReceived(@"transaction is completed");
}
#endif // PLATFORM(IOS_FAMILY)
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes