Modern IDB: Make TestRunner.clearAllDatabases also delete IndexedDB databases (once doing so is supported in WebCore) Landing this separately is an attempt to make the work in https://bugs.webkit.org/show_bug.cgi?id=157626 more manageable to polish and review.
Created attachment 279188 [details] Patch v1
Attachment 279188 [details] did not pass style-queue: ERROR: Source/WebCore/Modules/indexeddb/server/IDBServer.h:99: Extra space before ( in function call [whitespace/parens] [4] ERROR: Source/WebCore/Modules/indexeddb/server/IDBServer.cpp:471: Extra space before ( in function call [whitespace/parens] [4] Total errors found: 2 in 17 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 279188 [details] Patch v1 View in context: https://bugs.webkit.org/attachment.cgi?id=279188&action=review > Source/WebKit2/UIProcess/API/C/WKWebsiteDataStoreRef.cpp:62 > +void WKWebsiteDataStoreRemoveAllIndexedDatabases(WKWebsiteDataStoreRef dataStoreRef) > +{ > + OptionSet<WebKit::WebsiteDataType> dataTypes = WebKit::WebsiteDataType::IndexedDBDatabases; > + return WebKit::toImpl(dataStoreRef)->websiteDataStore().removeData(dataTypes, std::chrono::system_clock::time_point::min(), [] { }); > +} return??? If I wrote my own c++ compiler, this would be a compiler error. > Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp:259 > + WKBundlePostSynchronousMessage(InjectedBundle::singleton().bundle(), messageName.get(), messageBody.get(), 0); nullptr > Tools/WebKitTestRunner/TestInvocation.cpp:719 > + WKWebsiteDataStoreRemoveAllIndexedDatabases(WKContextGetWebsiteDataStore(TestController::singleton().context())); EFL doesn't like this. I'm not sure why. Everything seems correct. Maybe they're including an old version of the header without the change. WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle(OpaqueWKString const*, void const*): error: undefined reference to 'WKWebsiteDataStoreRemoveAllIndexedDatabases'
(In reply to comment #3) > Comment on attachment 279188 [details] > Patch v1 > > View in context: > https://bugs.webkit.org/attachment.cgi?id=279188&action=review > > > Source/WebKit2/UIProcess/API/C/WKWebsiteDataStoreRef.cpp:62 > > +void WKWebsiteDataStoreRemoveAllIndexedDatabases(WKWebsiteDataStoreRef dataStoreRef) > > +{ > > + OptionSet<WebKit::WebsiteDataType> dataTypes = WebKit::WebsiteDataType::IndexedDBDatabases; > > + return WebKit::toImpl(dataStoreRef)->websiteDataStore().removeData(dataTypes, std::chrono::system_clock::time_point::min(), [] { }); > > +} > > return??? If I wrote my own c++ compiler, this would be a compiler error. "void" is a valid return in a void function. :) (I copied this line from somewhere else before editing it) > > Tools/WebKitTestRunner/TestInvocation.cpp:719 > > + WKWebsiteDataStoreRemoveAllIndexedDatabases(WKContextGetWebsiteDataStore(TestController::singleton().context())); > > EFL doesn't like this. I'm not sure why. Everything seems correct. Maybe > they're including an old version of the header without the change. > WTR::TestInvocation:: > didReceiveSynchronousMessageFromInjectedBundle(OpaqueWKString const*, void > const*): error: undefined reference to > 'WKWebsiteDataStoreRemoveAllIndexedDatabases' They never compiled WKWebsiteDataStoreRef. They will now.
Created attachment 279255 [details] Patch for ES
Created attachment 279256 [details] Patch for EWS + landing
Attachment 279256 [details] did not pass style-queue: ERROR: Source/WebCore/Modules/indexeddb/server/IDBServer.h:99: Extra space before ( in function call [whitespace/parens] [4] ERROR: Source/WebCore/Modules/indexeddb/server/IDBServer.cpp:471: Extra space before ( in function call [whitespace/parens] [4] Total errors found: 2 in 18 files If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 279256 [details] Patch for EWS + landing Clearing flags on attachment: 279256 Committed r201081: <http://trac.webkit.org/changeset/201081>