Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(3404)

Unified Diff: chrome/test/data/webui/chrome_send_browsertest.h

Issue 8515016: WebUI test framework: fix Mock4JS verification, allow chrome.send passthrough. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase. Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/chrome_tests.gypi ('k') | chrome/test/data/webui/chrome_send_browsertest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/data/webui/chrome_send_browsertest.h
diff --git a/chrome/test/data/webui/chrome_send_browsertest.h b/chrome/test/data/webui/chrome_send_browsertest.h
new file mode 100644
index 0000000000000000000000000000000000000000..0262a46b5422127e3c6d19f0f1ff20d5536d643c
--- /dev/null
+++ b/chrome/test/data/webui/chrome_send_browsertest.h
@@ -0,0 +1,54 @@
+// Copyright (c) 2011 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+#ifndef CHROME_TEST_DATA_WEBUI_CHROME_SEND_BROWSERTEST_H_
+#define CHROME_TEST_DATA_WEBUI_CHROME_SEND_BROWSERTEST_H_
+#pragma once
+
+#include "chrome/browser/ui/webui/web_ui_browsertest.h"
+#include "testing/gmock/include/gmock/gmock.h"
+
+// Test fixture for testing chrome.send. This class registers the "checkSend"
+// message, but should NOT receive it.
+class ChromeSendWebUITest : public WebUIBrowserTest {
+ public:
+ ChromeSendWebUITest();
+ virtual ~ChromeSendWebUITest();
+
+ // Mocked message handler class to register expects using gmock framework.
+ class ChromeSendWebUIMessageHandler : public WebUIMessageHandler {
+ public:
+ ChromeSendWebUIMessageHandler();
+ ~ChromeSendWebUIMessageHandler();
+
+ MOCK_METHOD1(HandleCheckSend, void(const base::ListValue*));
+
+ private:
+ virtual void RegisterMessages() OVERRIDE;
+ };
+
+
+ protected:
+ // Strict mock will fail when unexpected chrome.send messages are received.
+ ::testing::StrictMock<ChromeSendWebUIMessageHandler> message_handler_;
+
+ private:
+ virtual WebUIMessageHandler* GetMockMessageHandler() OVERRIDE;
+
+ DISALLOW_COPY_AND_ASSIGN(ChromeSendWebUITest);
+};
+
+// Test fixture for verifying chrome.send messages are passed through. This
+// class DOES expect to receive the "checkSend" message.
+class ChromeSendPassthroughWebUITest : public ChromeSendWebUITest {
+ public:
+ ChromeSendPassthroughWebUITest();
+ virtual ~ChromeSendPassthroughWebUITest();
+
+ private:
+ virtual void SetUpOnMainThread() OVERRIDE;
+
+ DISALLOW_COPY_AND_ASSIGN(ChromeSendPassthroughWebUITest);
+};
+
+#endif // CHROME_TEST_DATA_WEBUI_CHROME_SEND_BROWSERTEST_H_
« no previous file with comments | « chrome/chrome_tests.gypi ('k') | chrome/test/data/webui/chrome_send_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698