Index: Tools/DumpRenderTree/chromium/TestRunner/src/MockColorChooser.cpp |
diff --git a/Tools/DumpRenderTree/chromium/TestRunner/src/TestCommon.cpp b/Tools/DumpRenderTree/chromium/TestRunner/src/MockColorChooser.cpp |
similarity index 59% |
copy from Tools/DumpRenderTree/chromium/TestRunner/src/TestCommon.cpp |
copy to Tools/DumpRenderTree/chromium/TestRunner/src/MockColorChooser.cpp |
index 78a1a1c613518d8a30c182b242bb8dd873b6f316..0147fb7fd152bd0ecf7eee9f06a6026d963bb265 100644 |
--- a/Tools/DumpRenderTree/chromium/TestRunner/src/TestCommon.cpp |
+++ b/Tools/DumpRenderTree/chromium/TestRunner/src/MockColorChooser.cpp |
@@ -29,36 +29,57 @@ |
*/ |
#include "config.h" |
-#include "TestCommon.h" |
+#include "MockColorChooser.h" |
+#include "WebTestDelegate.h" |
+#include "WebTestProxy.h" |
+ |
+using namespace WebKit; |
using namespace std; |
namespace WebTestRunner { |
namespace { |
+class HostMethodTask : public WebMethodTask<MockColorChooser> { |
+public: |
+ typedef void (MockColorChooser::*CallbackMethodType)(); |
+ HostMethodTask(MockColorChooser* object, CallbackMethodType callback) |
+ : WebMethodTask<MockColorChooser>(object) |
+ , m_callback(callback) |
+ { } |
+ |
+ virtual void runIfValid() { (m_object->*m_callback)(); } |
-const char layoutTestsPattern[] = "/LayoutTests/"; |
-const string::size_type layoutTestsPatternSize = sizeof(layoutTestsPattern) - 1; |
-const char fileUrlPattern[] = "file:/"; |
-const char fileTestPrefix[] = "(file test):"; |
-const char dataUrlPattern[] = "data:"; |
-const string::size_type dataUrlPatternSize = sizeof(dataUrlPattern) - 1; |
+private: |
+ CallbackMethodType m_callback; |
+}; |
+} |
+MockColorChooser::MockColorChooser(WebKit::WebColorChooserClient* client, WebTestDelegate* delegate, WebTestProxyBase* proxy) |
+ : m_client(client) |
+ , m_delegate(delegate) |
+ , m_proxy(proxy) |
+{ |
+ m_proxy->didOpenChooser(); |
+} |
+ |
+MockColorChooser::~MockColorChooser() |
+{ |
+ m_proxy->didCloseChooser(); |
+} |
+ |
+void MockColorChooser::setSelectedColor(const WebKit::WebColor) |
+{ |
+} |
+ |
+void MockColorChooser::endChooser() |
+{ |
+ m_delegate->postDelayedTask(new HostMethodTask(this, &MockColorChooser::invokeDidEndChooser), 0); |
} |
-string normalizeLayoutTestURL(const string& url) |
+void MockColorChooser::invokeDidEndChooser() |
{ |
- string result = url; |
- size_t pos; |
- if (!url.find(fileUrlPattern) && ((pos = url.find(layoutTestsPattern)) != string::npos)) { |
- // adjust file URLs to match upstream results. |
- result.replace(0, pos + layoutTestsPatternSize, fileTestPrefix); |
- } else if (!url.find(dataUrlPattern)) { |
- // URL-escape data URLs to match results upstream. |
- string path = url.substr(dataUrlPatternSize); |
- result.replace(dataUrlPatternSize, url.length(), path); |
- } |
- return result; |
+ m_client->didEndChooser(); |
} |
} |