summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-05 16:43:55 +0000
committerjam@chromium.org <jam@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2011-12-05 16:43:55 +0000
commit6f8f8b63fcea1e73107d9cb10122c806c454aca4 (patch)
treeddf1cfbdb90fd9f02a0b233747b248d061c60c1b
parented81b38b14cd63d20e23fcb126befd0527b4fb36 (diff)
downloadchromium_src-6f8f8b63fcea1e73107d9cb10122c806c454aca4.zip
chromium_src-6f8f8b63fcea1e73107d9cb10122c806c454aca4.tar.gz
chromium_src-6f8f8b63fcea1e73107d9cb10122c806c454aca4.tar.bz2
Get rid of view_messages.h dependency in extension_messages_browsertest.cc by adding a method to MockRenderThread instead.
BUG=98716 Review URL: http://codereview.chromium.org/8801001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112987 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/extensions/extension_messages_browsertest.cc29
-rw-r--r--chrome/browser/translate/translate_manager_browsertest.cc1
-rw-r--r--chrome/test/base/chrome_render_view_test.cc1
-rw-r--r--content/test/mock_render_thread.cc11
-rw-r--r--content/test/mock_render_thread.h5
5 files changed, 21 insertions, 26 deletions
diff --git a/chrome/browser/extensions/extension_messages_browsertest.cc b/chrome/browser/extensions/extension_messages_browsertest.cc
index bf27082..6f9feb3 100644
--- a/chrome/browser/extensions/extension_messages_browsertest.cc
+++ b/chrome/browser/extensions/extension_messages_browsertest.cc
@@ -11,7 +11,6 @@
#include "chrome/renderer/extensions/extension_dispatcher.h"
#include "chrome/renderer/extensions/miscellaneous_bindings.h"
#include "chrome/test/base/chrome_render_view_test.h"
-#include "content/common/view_messages.h"
#include "testing/gtest/include/gtest/gtest.h"
using extensions::MiscellaneousBindings;
@@ -87,14 +86,8 @@ TEST_F(ChromeRenderViewTest, ExtensionMessagesOpenChannel) {
kPortId, "{\"val\": 42}", NULL);
// Verify that we got it.
- const IPC::Message* alert_msg =
- render_thread_->sink().GetUniqueMessageMatching(
- ViewHostMsg_RunJavaScriptMessage::ID);
- ASSERT_TRUE(alert_msg);
- iter = IPC::SyncMessage::GetDataIterator(alert_msg);
- ViewHostMsg_RunJavaScriptMessage::SendParam alert_param;
- ASSERT_TRUE(IPC::ReadParam(alert_msg, &iter, &alert_param));
- EXPECT_EQ(ASCIIToUTF16("content got: 42"), alert_param.a);
+ render_thread_->VerifyRunJavaScriptMessageSend(
+ ASCIIToUTF16("content got: 42"));
}
// Tests that the bindings for handling a new channel connection and channel
@@ -143,25 +136,13 @@ TEST_F(ChromeRenderViewTest, ExtensionMessagesOnConnect) {
kPortId, "{\"val\": 42}", NULL);
// Verify that we got it.
- const IPC::Message* alert_msg =
- render_thread_->sink().GetUniqueMessageMatching(
- ViewHostMsg_RunJavaScriptMessage::ID);
- ASSERT_TRUE(alert_msg);
- void* iter = IPC::SyncMessage::GetDataIterator(alert_msg);
- ViewHostMsg_RunJavaScriptMessage::SendParam alert_param;
- ASSERT_TRUE(IPC::ReadParam(alert_msg, &iter, &alert_param));
- EXPECT_EQ(ASCIIToUTF16("got: 42"), alert_param.a);
+ render_thread_->VerifyRunJavaScriptMessageSend(ASCIIToUTF16("got: 42"));
// Now simulate the channel closing.
render_thread_->sink().ClearMessages();
DispatchOnDisconnect(extension_dispatcher_->v8_context_set(), kPortId);
// Verify that we got it.
- alert_msg =
- render_thread_->sink().GetUniqueMessageMatching(
- ViewHostMsg_RunJavaScriptMessage::ID);
- ASSERT_TRUE(alert_msg);
- iter = IPC::SyncMessage::GetDataIterator(alert_msg);
- ASSERT_TRUE(IPC::ReadParam(alert_msg, &iter, &alert_param));
- EXPECT_EQ(ASCIIToUTF16("disconnected: 24"), alert_param.a);
+ render_thread_->VerifyRunJavaScriptMessageSend(
+ ASCIIToUTF16("disconnected: 24"));
}
diff --git a/chrome/browser/translate/translate_manager_browsertest.cc b/chrome/browser/translate/translate_manager_browsertest.cc
index 80d5410..29a2582 100644
--- a/chrome/browser/translate/translate_manager_browsertest.cc
+++ b/chrome/browser/translate/translate_manager_browsertest.cc
@@ -28,7 +28,6 @@
#include "content/browser/renderer_host/mock_render_process_host.h"
#include "content/browser/tab_contents/navigation_details.h"
#include "content/browser/tab_contents/test_tab_contents.h"
-#include "content/common/view_messages.h"
#include "content/public/browser/notification_details.h"
#include "content/public/browser/notification_registrar.h"
#include "content/test/notification_observer_mock.h"
diff --git a/chrome/test/base/chrome_render_view_test.cc b/chrome/test/base/chrome_render_view_test.cc
index cbdd4b3..289374d 100644
--- a/chrome/test/base/chrome_render_view_test.cc
+++ b/chrome/test/base/chrome_render_view_test.cc
@@ -16,7 +16,6 @@
#include "chrome/renderer/extensions/miscellaneous_bindings.h"
#include "chrome/renderer/extensions/schema_generated_bindings.h"
#include "content/common/dom_storage_common.h"
-#include "content/common/view_messages.h"
#include "content/public/browser/native_web_keyboard_event.h"
#include "content/public/common/renderer_preferences.h"
#include "content/renderer/render_view_impl.h"
diff --git a/content/test/mock_render_thread.cc b/content/test/mock_render_thread.cc
index eca409e..70de43e 100644
--- a/content/test/mock_render_thread.cc
+++ b/content/test/mock_render_thread.cc
@@ -19,6 +19,17 @@ MockRenderThread::MockRenderThread()
MockRenderThread::~MockRenderThread() {
}
+void MockRenderThread::VerifyRunJavaScriptMessageSend(
+ const string16& expected_alert_message) {
+ const IPC::Message* alert_msg =
+ sink_.GetUniqueMessageMatching(ViewHostMsg_RunJavaScriptMessage::ID);
+ ASSERT_TRUE(alert_msg);
+ void* iter = IPC::SyncMessage::GetDataIterator(alert_msg);
+ ViewHostMsg_RunJavaScriptMessage::SendParam alert_param;
+ ASSERT_TRUE(IPC::ReadParam(alert_msg, &iter, &alert_param));
+ EXPECT_EQ(expected_alert_message, alert_param.a);
+}
+
// Called by the Widget. Used to send messages to the browser.
// We short-circuit the mechanism and handle the messages right here on this
// class.
diff --git a/content/test/mock_render_thread.h b/content/test/mock_render_thread.h
index 4223ab2..3d87ed0 100644
--- a/content/test/mock_render_thread.h
+++ b/content/test/mock_render_thread.h
@@ -7,6 +7,7 @@
#pragma once
#include "base/shared_memory.h"
+#include "base/string16.h"
#include "content/public/renderer/render_thread.h"
#include "ipc/ipc_test_sink.h"
#include "third_party/WebKit/Source/WebKit/chromium/public/WebPopupType.h"
@@ -29,6 +30,10 @@ class MockRenderThread : public content::RenderThread {
// Provides access to the messages that have been received by this thread.
IPC::TestSink& sink() { return sink_; }
+ // Helpers for embedders to know when content IPC messages are received, since
+ // they don't have access to content IPC files.
+ void VerifyRunJavaScriptMessageSend(const string16& expected_alert_message);
+
// content::RenderThread implementation:
virtual bool Send(IPC::Message* msg) OVERRIDE;
virtual MessageLoop* GetMessageLoop() OVERRIDE;