Title: [128157] trunk
Revision
128157
Author
[email protected]
Date
2012-09-11 02:16:21 -0700 (Tue, 11 Sep 2012)

Log Message

WTR needs an implementation of applicationCacheDiskUsageForOrigin
https://bugs.webkit.org/show_bug.cgi?id=87188

Patch by Christophe Dumez <[email protected]> on 2012-09-11
Reviewed by Kenneth Rohde Christiansen.

Source/WebKit2:

Add Bundle private C API to retrieve the application cache
usage for a specific security origin. This is needed by
WebKitTestRunner.

* WebProcess/InjectedBundle/API/c/WKBundle.cpp:
(WKBundleGetAppCacheUsageForOrigin):
* WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
* WebProcess/InjectedBundle/InjectedBundle.cpp:
(WebKit::InjectedBundle::appCacheUsageForOrigin):
(WebKit):
* WebProcess/InjectedBundle/InjectedBundle.h:
(InjectedBundle):

Tools:

Add implementation for applicationCacheDiskUsageForOrigin()
in WebKitTestRunner.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::applicationCacheDiskUsageForOrigin):
(WTR):
* WebKitTestRunner/InjectedBundle/TestRunner.h:
(TestRunner):

LayoutTests:

Unskip test cases that require an implementation of
applicationCacheDiskUsageForOrigin in WebKitTestRunner.

* platform/efl/Skipped:
* platform/wk2/Skipped:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (128156 => 128157)


--- trunk/LayoutTests/ChangeLog	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/LayoutTests/ChangeLog	2012-09-11 09:16:21 UTC (rev 128157)
@@ -1,3 +1,16 @@
+2012-09-11  Christophe Dumez  <[email protected]>
+
+        WTR needs an implementation of applicationCacheDiskUsageForOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=87188
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Unskip test cases that require an implementation of
+        applicationCacheDiskUsageForOrigin in WebKitTestRunner.
+
+        * platform/efl/Skipped:
+        * platform/wk2/Skipped:
+
 2012-09-11  Mihnea Ovidenie  <[email protected]>
 
         [CSS Regions] Auto width is not working for Regions

Modified: trunk/LayoutTests/platform/efl/Skipped (128156 => 128157)


--- trunk/LayoutTests/platform/efl/Skipped	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/LayoutTests/platform/efl/Skipped	2012-09-11 09:16:21 UTC (rev 128157)
@@ -328,7 +328,6 @@
 fast/replaced/invalid-object-with-fallback.html
 fast/text/midword-break-after-breakable-char.html
 http/tests/navigation/go-back-to-error-page.html
-loader/go-back-to-different-window-size.html
 userscripts/user-script-plugin-document.html
 
 # BUG: Needs a grayish canvas background. See DumpRenderTree/chromium/WebViewHost::displayRepaintMask().
@@ -741,7 +740,6 @@
 http/tests/navigation/forward-and-cancel.html
 http/tests/navigation/no-referrer-reset.html
 http/tests/navigation/no-referrer-target-blank.html
-http/tests/navigation/ping-cross-origin-from-https.html
 http/tests/navigation/post-goback-same-url.html
 http/tests/navigation/post-goback2.html
 http/tests/navigation/postredirect-frames.html

Modified: trunk/LayoutTests/platform/wk2/Skipped (128156 => 128157)


--- trunk/LayoutTests/platform/wk2/Skipped	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/LayoutTests/platform/wk2/Skipped	2012-09-11 09:16:21 UTC (rev 128157)
@@ -202,17 +202,8 @@
 fast/images/animated-gif-restored-from-bfcache.html
 fast/text/zero-font-size.html
 
-# WTR needs an implementation of applicationCacheDiskUsageForOrigin
-# https://bugs.webkit.org/show_bug.cgi?id=87188
+# WTR needs an implementation of dumpApplicationCacheDelegateCallbacks
 http/tests/appcache/origin-usage.html
-http/tests/canvas/webgl/origin-clean-conformance.html
-http/tests/navigation/ping-cross-origin-from-https.html
-http/tests/security/webgl-remote-read-remote-image-allowed.html
-http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html
-http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html
-loader/go-back-to-different-window-size.html
-media/restore-from-page-cache.html
-java/embedding-java-with-object.html
 
 # WebKitTestRunner needs to support layoutTestController.dumpDOMAsWebArchive
 # <https://bugs.webkit.org/show_bug.cgi?id=42324>

Modified: trunk/Source/WebKit2/ChangeLog (128156 => 128157)


--- trunk/Source/WebKit2/ChangeLog	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Source/WebKit2/ChangeLog	2012-09-11 09:16:21 UTC (rev 128157)
@@ -1,3 +1,23 @@
+2012-09-11  Christophe Dumez  <[email protected]>
+
+        WTR needs an implementation of applicationCacheDiskUsageForOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=87188
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Add Bundle private C API to retrieve the application cache
+        usage for a specific security origin. This is needed by
+        WebKitTestRunner.
+
+        * WebProcess/InjectedBundle/API/c/WKBundle.cpp:
+        (WKBundleGetAppCacheUsageForOrigin):
+        * WebProcess/InjectedBundle/API/c/WKBundlePrivate.h:
+        * WebProcess/InjectedBundle/InjectedBundle.cpp:
+        (WebKit::InjectedBundle::appCacheUsageForOrigin):
+        (WebKit):
+        * WebProcess/InjectedBundle/InjectedBundle.h:
+        (InjectedBundle):
+
 2012-09-11  Zhigang Gong  <[email protected]>
 
         [EFL][WK2] Add necessary include directory in WebKit2

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp (128156 => 128157)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundle.cpp	2012-09-11 09:16:21 UTC (rev 128157)
@@ -231,6 +231,11 @@
     toImpl(bundleRef)->setAppCacheMaximumSize(size);
 }
 
+uint64_t WKBundleGetAppCacheUsageForOrigin(WKBundleRef bundleRef, WKStringRef origin)
+{
+    return toImpl(bundleRef)->appCacheUsageForOrigin(toImpl(origin)->string());
+}
+
 int WKBundleNumberOfPages(WKBundleRef bundleRef, WKBundleFrameRef frameRef, double pageWidthInPixels, double pageHeightInPixels)
 {
     return toImpl(bundleRef)->numberOfPages(toImpl(frameRef), pageWidthInPixels, pageHeightInPixels);

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h (128156 => 128157)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/API/c/WKBundlePrivate.h	2012-09-11 09:16:21 UTC (rev 128157)
@@ -94,6 +94,7 @@
 // Application Cache API
 WK_EXPORT void WKBundleClearApplicationCache(WKBundleRef bundle);
 WK_EXPORT void WKBundleSetAppCacheMaximumSize(WKBundleRef bundle, uint64_t size);
+WK_EXPORT uint64_t WKBundleGetAppCacheUsageForOrigin(WKBundleRef bundle, WKStringRef origin);
 
 // Garbage collection API
 WK_EXPORT void WKBundleGarbageCollectJavaScriptObjects(WKBundleRef bundle);

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp (128156 => 128157)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.cpp	2012-09-11 09:16:21 UTC (rev 128157)
@@ -46,6 +46,7 @@
 #include "WebProcess.h"
 #include <_javascript_Core/APICast.h>
 #include <_javascript_Core/JSLock.h>
+#include <WebCore/ApplicationCache.h>
 #include <WebCore/Frame.h>
 #include <WebCore/FrameView.h>
 #include <WebCore/GCController.h>
@@ -331,6 +332,12 @@
     WebApplicationCacheManager::shared().setAppCacheMaximumSize(size);
 }
 
+uint64_t InjectedBundle::appCacheUsageForOrigin(const String& originString)
+{
+    RefPtr<SecurityOrigin> origin = SecurityOrigin::createFromString(originString);
+    return ApplicationCache::diskUsageForOrigin(origin.get());
+}
+
 int InjectedBundle::numberOfPages(WebFrame* frame, double pageWidthInPixels, double pageHeightInPixels)
 {
     Frame* coreFrame = frame ? frame->coreFrame() : 0;

Modified: trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h (128156 => 128157)


--- trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Source/WebKit2/WebProcess/InjectedBundle/InjectedBundle.h	2012-09-11 09:16:21 UTC (rev 128157)
@@ -145,6 +145,7 @@
     // Application Cache API
     void clearApplicationCache();
     void setAppCacheMaximumSize(uint64_t);
+    uint64_t appCacheUsageForOrigin(const String& origin);
 
     // Garbage collection API
     void garbageCollectJavaScriptObjects();

Modified: trunk/Tools/ChangeLog (128156 => 128157)


--- trunk/Tools/ChangeLog	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Tools/ChangeLog	2012-09-11 09:16:21 UTC (rev 128157)
@@ -1,3 +1,20 @@
+2012-09-11  Christophe Dumez  <[email protected]>
+
+        WTR needs an implementation of applicationCacheDiskUsageForOrigin
+        https://bugs.webkit.org/show_bug.cgi?id=87188
+
+        Reviewed by Kenneth Rohde Christiansen.
+
+        Add implementation for applicationCacheDiskUsageForOrigin()
+        in WebKitTestRunner.
+
+        * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
+        * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
+        (WTR::TestRunner::applicationCacheDiskUsageForOrigin):
+        (WTR):
+        * WebKitTestRunner/InjectedBundle/TestRunner.h:
+        (TestRunner):
+
 2012-09-10  Joanmarie Diggs  <[email protected]>
 
         Properly expose <legend> elements to ATs

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl (128156 => 128157)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2012-09-11 09:16:21 UTC (rev 128157)
@@ -107,6 +107,7 @@
         // Application Cache API
         void clearAllApplicationCaches();
         void setAppCacheMaximumSize(in unsigned long long size);
+        long long applicationCacheDiskUsageForOrigin(in DOMString origin);
 
         // Compositing testing.
         DOMString layerTreeAsText();

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (128156 => 128157)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2012-09-11 09:16:21 UTC (rev 128157)
@@ -307,6 +307,11 @@
     WKBundleSetAppCacheMaximumSize(InjectedBundle::shared().bundle(), size);
 }
 
+long long TestRunner::applicationCacheDiskUsageForOrigin(JSStringRef origin)
+{
+    return WKBundleGetAppCacheUsageForOrigin(InjectedBundle::shared().bundle(), toWK(origin).get());
+}
+
 bool TestRunner::isCommandEnabled(JSStringRef name)
 {
     return WKBundlePageIsEditingCommandEnabled(InjectedBundle::shared().page()->page(), toWK(name).get());

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h (128156 => 128157)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2012-09-11 08:15:20 UTC (rev 128156)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2012-09-11 09:16:21 UTC (rev 128157)
@@ -144,6 +144,7 @@
     // Application Cache
     void clearAllApplicationCaches();
     void setAppCacheMaximumSize(uint64_t);
+    long long applicationCacheDiskUsageForOrigin(JSStringRef origin);
 
     // Printing
     bool isPageBoxVisible(int pageIndex);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to