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

Unified Diff: chrome/browser/renderer_host/render_widget_host_unittest.cc

Issue 6010004: Refactor RenderWidgetHost::set_paint_observer() (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Remove helper classes per review Created 9 years, 11 months 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
Index: chrome/browser/renderer_host/render_widget_host_unittest.cc
diff --git a/chrome/browser/renderer_host/render_widget_host_unittest.cc b/chrome/browser/renderer_host/render_widget_host_unittest.cc
index 758a5bd714916e5a8887f44bbaafaf0b8bf4f9e4..86bf0b4c1ef58664d937af2f02a71545da32b36e 100644
--- a/chrome/browser/renderer_host/render_widget_host_unittest.cc
+++ b/chrome/browser/renderer_host/render_widget_host_unittest.cc
@@ -9,8 +9,9 @@
#include "base/timer.h"
#include "build/build_config.h"
#include "chrome/browser/renderer_host/backing_store.h"
-#include "chrome/browser/renderer_host/render_widget_host_painting_observer.h"
#include "chrome/browser/renderer_host/test/test_render_view_host.h"
+#include "chrome/common/notification_details.h"
+#include "chrome/common/notification_source.h"
#include "chrome/common/render_messages.h"
#include "chrome/common/render_messages_params.h"
#include "chrome/test/testing_profile.h"
@@ -200,11 +201,8 @@ class MockRenderWidgetHost : public RenderWidgetHost {
// MockPaintingObserver --------------------------------------------------------
-class MockPaintingObserver : public RenderWidgetHostPaintingObserver {
+class MockPaintingObserver : public NotificationObserver {
public:
- void WidgetWillDestroyBackingStore(RenderWidgetHost* widget,
- BackingStore* backing_store) {}
- void WidgetDidUpdateBackingStore(RenderWidgetHost* widget) {}
void WidgetDidReceivePaintAtSizeAck(RenderWidgetHost* host,
int tag,
const gfx::Size& size) {
@@ -213,6 +211,20 @@ class MockPaintingObserver : public RenderWidgetHostPaintingObserver {
size_ = size;
}
+ void Observe(NotificationType type,
+ const NotificationSource& source,
+ const NotificationDetails& details) {
+ if (type ==
+ NotificationType::RENDER_WIDGET_HOST_DID_RECEIVE_PAINT_AT_SIZE_ACK) {
+ RenderWidgetHost::PaintAtSizeAckDetails* size_ack_details =
+ Details<RenderWidgetHost::PaintAtSizeAckDetails>(details).ptr();
+ WidgetDidReceivePaintAtSizeAck(
+ Source<RenderWidgetHost>(source).ptr(),
+ size_ack_details->tag,
+ size_ack_details->size);
+ }
+ }
+
MockRenderWidgetHost* host() const { return host_; }
int tag() const { return tag_; }
gfx::Size size() const { return size_; }
@@ -549,15 +561,18 @@ TEST_F(RenderWidgetHostTest, PaintAtSize) {
EXPECT_TRUE(
process_->sink().GetUniqueMessageMatching(ViewMsg_PaintAtSize::ID));
+ NotificationRegistrar registrar;
MockPaintingObserver observer;
- host_->set_painting_observer(&observer);
+ registrar.Add(
+ &observer,
+ NotificationType::RENDER_WIDGET_HOST_DID_RECEIVE_PAINT_AT_SIZE_ACK,
+ Source<RenderWidgetHost>(host_.get()));
host_->OnMsgPaintAtSizeAck(kPaintAtSizeTag, gfx::Size(20, 30));
EXPECT_EQ(host_.get(), observer.host());
EXPECT_EQ(kPaintAtSizeTag, observer.tag());
EXPECT_EQ(20, observer.size().width());
EXPECT_EQ(30, observer.size().height());
- host_->set_painting_observer(NULL);
}
TEST_F(RenderWidgetHostTest, HandleKeyEventsWeSent) {

Powered by Google App Engine
This is Rietveld 408576698