Changeset 203426 in webkit
- Timestamp:
- Jul 19, 2016, 3:51:13 PM (10 years ago)
- Location:
- trunk/Tools
- Files:
-
- 3 added
- 3 edited
- 2 moved
-
ChangeLog (modified) (1 diff)
-
TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj (modified) (10 diffs)
-
TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db (added)
-
TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-shm (added)
-
TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-wal (added)
-
TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm (modified) (2 diffs)
-
TestWebKitAPI/cocoa/InstanceMethodSwizzler.h (moved) (moved from trunk/Tools/TestWebKitAPI/mac/InstanceMethodSwizzler.h )
-
TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm (moved) (moved from trunk/Tools/TestWebKitAPI/mac/InstanceMethodSwizzler.mm )
Legend:
- Unmodified
- Added
- Removed
-
trunk/Tools/ChangeLog
r203421 r203426 1 2016-07-19 Alex Christensen <achristensen@webkit.org> 2 3 Add regression test for r203392 4 https://bugs.webkit.org/show_bug.cgi?id=159949 5 6 Reviewed by Brady Eidson. 7 8 * TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj: 9 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db: Added. 10 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-shm: Added. 11 * TestWebKitAPI/Tests/WebKit2Cocoa/ApplicationCache.db-wal: Added. 12 * TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm: 13 (TEST): 14 (fileSize): 15 (swizzledBundleIdentifierMobileSafari): 16 (swizzledBundleIdentifierWebBookmarksD): 17 (defaultApplicationCacheDirectory): 18 * TestWebKitAPI/cocoa/InstanceMethodSwizzler.h: Copied from TestWebKitAPI/mac/InstanceMethodSwizzler.h. 19 * TestWebKitAPI/cocoa/InstanceMethodSwizzler.mm: Copied from TestWebKitAPI/mac/InstanceMethodSwizzler.mm. 20 * TestWebKitAPI/mac/InstanceMethodSwizzler.h: Removed. 21 * TestWebKitAPI/mac/InstanceMethodSwizzler.mm: Removed. 22 1 23 2016-07-19 Keith Miller <keith_miller@apple.com> 2 24 -
trunk/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj
r203338 r203426 108 108 57901FB11CAF142D00ED64F9 /* LoadInvalidURLRequest.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57901FB01CAF141C00ED64F9 /* LoadInvalidURLRequest.html */; }; 109 109 57F56A5C1C7F8CC100F31D7E /* IsNavigationActionTrusted.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 57F56A5B1C7F8A4000F31D7E /* IsNavigationActionTrusted.html */; }; 110 5C726D6F1D3EE06E00C5E1A1 /* InstanceMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */; }; 111 5C9E59411D3EB5AC00E3C62E /* ApplicationCache.db in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */; }; 112 5C9E59421D3EB5AC00E3C62E /* ApplicationCache.db-shm in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */; }; 113 5C9E59431D3EB5AC00E3C62E /* ApplicationCache.db-wal in Copy Resources */ = {isa = PBXBuildFile; fileRef = 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */; }; 110 114 764322D71B61CCC30024F801 /* WordBoundaryTypingAttributes.mm in Sources */ = {isa = PBXBuildFile; fileRef = 764322D51B61CCA40024F801 /* WordBoundaryTypingAttributes.mm */; }; 111 115 7673499D1930C5BB00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7673499A1930182E00E44DF9 /* StopLoadingDuringDidFailProvisionalLoad_bundle.cpp */; }; … … 204 208 7CCB99211D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm in Sources */ = {isa = PBXBuildFile; fileRef = 7CCB99201D3B41F6003922F6 /* UserInitiatedActionInNavigationAction.mm */; }; 205 209 7CCB99231D3B4A46003922F6 /* open-multiple-external-url.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 7CCB99221D3B44E7003922F6 /* open-multiple-external-url.html */; }; 206 7CCE7EA41A4119F300447C4C /* InstanceMethodSwizzler.mm in Sources */ = {isa = PBXBuildFile; fileRef = C08587FF13FEC3A6001EF4E5 /* InstanceMethodSwizzler.mm */; };207 210 7CCE7EA51A411A0800447C4C /* JavaScriptTestMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = C081224013FC172400DC39AE /* JavaScriptTestMac.mm */; }; 208 211 7CCE7EA61A411A0F00447C4C /* PlatformUtilitiesMac.mm in Sources */ = {isa = PBXBuildFile; fileRef = BC131884117114B600B69727 /* PlatformUtilitiesMac.mm */; }; … … 489 492 dstSubfolderSpec = 7; 490 493 files = ( 494 5C9E59411D3EB5AC00E3C62E /* ApplicationCache.db in Copy Resources */, 495 5C9E59421D3EB5AC00E3C62E /* ApplicationCache.db-shm in Copy Resources */, 496 5C9E59431D3EB5AC00E3C62E /* ApplicationCache.db-wal in Copy Resources */, 491 497 7CCB99231D3B4A46003922F6 /* open-multiple-external-url.html in Copy Resources */, 492 498 932AE53D1D371047005DFFAF /* focus-inputs.html in Copy Resources */, … … 784 790 57F56A5B1C7F8A4000F31D7E /* IsNavigationActionTrusted.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = IsNavigationActionTrusted.html; sourceTree = "<group>"; }; 785 791 5C5E633D1D0B67940085A025 /* UniqueRef.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = UniqueRef.cpp; sourceTree = "<group>"; }; 792 5C726D6D1D3EE06800C5E1A1 /* InstanceMethodSwizzler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = InstanceMethodSwizzler.h; path = cocoa/InstanceMethodSwizzler.h; sourceTree = "<group>"; }; 793 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = InstanceMethodSwizzler.mm; path = cocoa/InstanceMethodSwizzler.mm; sourceTree = "<group>"; }; 794 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */ = {isa = PBXFileReference; lastKnownFileType = file; path = ApplicationCache.db; sourceTree = "<group>"; }; 795 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */ = {isa = PBXFileReference; lastKnownFileType = file; path = "ApplicationCache.db-shm"; sourceTree = "<group>"; }; 796 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */ = {isa = PBXFileReference; lastKnownFileType = file; path = "ApplicationCache.db-wal"; sourceTree = "<group>"; }; 786 797 7560917719259C59009EF06E /* MemoryCacheAddImageToCacheIOS.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = MemoryCacheAddImageToCacheIOS.mm; sourceTree = "<group>"; }; 787 798 75F3133F18C171B70041CAEC /* EphemeralSessionPushStateNoHistoryCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = EphemeralSessionPushStateNoHistoryCallback.cpp; sourceTree = "<group>"; }; … … 975 986 C08587BE13FE956C001EF4E5 /* WebKitAgnosticTest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebKitAgnosticTest.h; sourceTree = "<group>"; }; 976 987 C08587FB13FEC39B001EF4E5 /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InstanceMethodSwizzler.mm; sourceTree = "<group>"; }; 977 C08587FE13FEC3A6001EF4E5 /* InstanceMethodSwizzler.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InstanceMethodSwizzler.h; sourceTree = "<group>"; };978 C08587FF13FEC3A6001EF4E5 /* InstanceMethodSwizzler.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = InstanceMethodSwizzler.mm; sourceTree = "<group>"; };979 988 C0991C50143C7D68007998F2 /* RetainPtrHashing.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = RetainPtrHashing.cpp; sourceTree = "<group>"; }; 980 989 C0ADBE7A12FCA4D000D2C129 /* JavaScriptTest.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JavaScriptTest.cpp; sourceTree = "<group>"; }; … … 1147 1156 isa = PBXGroup; 1148 1157 children = ( 1158 5C726D6D1D3EE06800C5E1A1 /* InstanceMethodSwizzler.h */, 1159 5C726D6E1D3EE06800C5E1A1 /* InstanceMethodSwizzler.mm */, 1149 1160 A13EBB441B87332B00097110 /* WebProcessPlugIn */, 1150 1161 0F139E721A423A2B00F590F5 /* PlatformUtilitiesCocoa.mm */, … … 1305 1316 isa = PBXGroup; 1306 1317 children = ( 1318 5C9E593E1D3EB1DE00E3C62E /* ApplicationCache.db */, 1319 5C9E593F1D3EB1DE00E3C62E /* ApplicationCache.db-shm */, 1320 5C9E59401D3EB1DE00E3C62E /* ApplicationCache.db-wal */, 1307 1321 93CFA8661CEB9DE1000565A8 /* autofocused-text-input.html */, 1308 1322 A16F66B91C40EA2000BD4D24 /* ContentFiltering.html */, … … 1619 1633 children = ( 1620 1634 1AEDE22413E5E7A000E62FE8 /* InjectedBundleControllerMac.mm */, 1621 C08587FE13FEC3A6001EF4E5 /* InstanceMethodSwizzler.h */,1622 C08587FF13FEC3A6001EF4E5 /* InstanceMethodSwizzler.mm */,1623 1635 C081224013FC172400DC39AE /* JavaScriptTestMac.mm */, 1624 1636 2E7765CE16C4D81100BA2BB1 /* mainMac.mm */, … … 2138 2150 7CCE7EFD1A411AE600447C4C /* InjectedBundleInitializationUserDataCallbackWins.cpp in Sources */, 2139 2151 7CCE7EC31A411A7E00447C4C /* InspectorBar.mm in Sources */, 2140 7CCE7EA41A4119F300447C4C /* InstanceMethodSwizzler.mm in Sources */,2141 2152 7CCE7EDA1A411A8700447C4C /* InstanceMethodSwizzler.mm in Sources */, 2142 2153 7C54A4BE1AA11CCA00380F78 /* WKBundleFileHandle.cpp in Sources */, … … 2178 2189 7CCE7F0A1A411AE600447C4C /* PasteboardNotifications.mm in Sources */, 2179 2190 7C83E0BB1D0A650000FEBCF3 /* FindInPage.mm in Sources */, 2191 5C726D6F1D3EE06E00C5E1A1 /* InstanceMethodSwizzler.mm in Sources */, 2180 2192 7CCE7EAF1A411A3800447C4C /* PlatformUtilities.cpp in Sources */, 2181 2193 0F139E781A423A6B00F590F5 /* PlatformUtilitiesCocoa.mm in Sources */, -
trunk/Tools/TestWebKitAPI/Tests/WebKit2Cocoa/LocalStorageClear.mm
r202984 r203426 26 26 #import "config.h" 27 27 28 #import "InstanceMethodSwizzler.h" 28 29 #import "PlatformUtilities.h" 29 30 #import "Test.h" … … 90 91 } 91 92 93 static long long fileSize(NSURL* url) 94 { 95 NSError *error = nil; 96 NSDictionary *fileAttributes = [[NSFileManager defaultManager] attributesOfItemAtPath:url.path error:&error]; 97 if (error) 98 return -1; 99 return [[fileAttributes objectForKey:NSFileSize] longLongValue]; 100 } 101 102 NSString *swizzledBundleIdentifierMobileSafari() 103 { 104 return @"com.apple.mobilesafari"; 105 } 106 107 NSString *swizzledBundleIdentifierWebBookmarksD() 108 { 109 return @"com.apple.webbookmarksd"; 110 } 111 112 NSString *defaultApplicationCacheDirectory() 113 { 114 return @"~/Library/Caches/TestWebKitAPI/WebKit/OfflineWebApplicationCache"; 115 } 116 117 TEST(WKWebView, ClearAppCache) 118 { 119 { 120 NSURL *dbResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db" subdirectory:@"TestWebKitAPI.resources"]; 121 NSURL *shmResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db-shm" subdirectory:@"TestWebKitAPI.resources"]; 122 NSURL *walResourceURL = [[NSBundle mainBundle] URLForResource:@"ApplicationCache" withExtension:@"db-wal" subdirectory:@"TestWebKitAPI.resources"]; 123 124 NSURL *targetURL = [NSURL fileURLWithPath:[defaultApplicationCacheDirectory() stringByExpandingTildeInPath]]; 125 [[NSFileManager defaultManager] createDirectoryAtURL:targetURL withIntermediateDirectories:YES attributes:nil error:nil]; 126 127 NSURL *dbTargetURL = [targetURL URLByAppendingPathComponent:@"ApplicationCache.db"]; 128 NSURL *walTargetURL = [targetURL URLByAppendingPathComponent:@"ApplicationCache.db-wal"]; 129 NSURL *shmTargetURL = [targetURL URLByAppendingPathComponent:@"ApplicationCache.db-shm"]; 130 131 // Clean up any files that may have been left from this test failing before. 132 [[NSFileManager defaultManager] removeItemAtURL:dbTargetURL error:nil]; 133 [[NSFileManager defaultManager] removeItemAtURL:walTargetURL error:nil]; 134 [[NSFileManager defaultManager] removeItemAtURL:shmTargetURL error:nil]; 135 EXPECT_EQ(fileSize(dbTargetURL), -1); 136 EXPECT_EQ(fileSize(walTargetURL), -1); 137 EXPECT_EQ(fileSize(shmTargetURL), -1); 138 139 // Copy the resources from the bundle to ~/Library/... 140 [[NSFileManager defaultManager] copyItemAtURL:dbResourceURL toURL:dbTargetURL error:nil]; 141 [[NSFileManager defaultManager] copyItemAtURL:shmResourceURL toURL:shmTargetURL error:nil]; 142 [[NSFileManager defaultManager] copyItemAtURL:walResourceURL toURL:walTargetURL error:nil]; 143 EXPECT_GT(fileSize(dbTargetURL), 0); 144 EXPECT_GT(fileSize(shmTargetURL), 0); 145 EXPECT_GT(fileSize(walTargetURL), 0); 146 147 // Make sure there is a record in the WKWebsiteDataStore. 148 readyToContinue = false; 149 [[WKWebsiteDataStore defaultDataStore] fetchDataRecordsOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] completionHandler:^(NSArray<WKWebsiteDataRecord *> *websiteDataRecords) 150 { 151 EXPECT_EQ(websiteDataRecords.count, 1ul); 152 readyToContinue = true; 153 }]; 154 TestWebKitAPI::Util::run(&readyToContinue); 155 } 156 157 readyToContinue = false; 158 [[WKWebsiteDataStore defaultDataStore] removeDataOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] modifiedSince:[NSDate distantPast] completionHandler:^() 159 { 160 NSURL *targetURL = [NSURL fileURLWithPath:[defaultApplicationCacheDirectory() stringByExpandingTildeInPath]]; 161 NSURL *walTargetURL = [targetURL URLByAppendingPathComponent:@"ApplicationCache.db-wal"]; 162 163 // Make sure there is no record in the WKWebsiteDataStore. 164 EXPECT_EQ(fileSize(walTargetURL), 0); 165 [[WKWebsiteDataStore defaultDataStore] fetchDataRecordsOfTypes:[WKWebsiteDataStore allWebsiteDataTypes] completionHandler:^(NSArray<WKWebsiteDataRecord *> *websiteDataRecords) 166 { 167 EXPECT_EQ(websiteDataRecords.count, 0ul); 168 readyToContinue = true; 169 }]; 170 }]; 171 TestWebKitAPI::Util::run(&readyToContinue); 172 } 92 173 #endif
Note:
See TracChangeset
for help on using the changeset viewer.