summaryrefslogtreecommitdiffstats
path: root/chrome/browser/renderer_host/render_widget_host_unittest.cc
diff options
context:
space:
mode:
authorthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-06 00:15:51 +0000
committerthestig@chromium.org <thestig@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-02-06 00:15:51 +0000
commit22f06cb077391d9499ded311af99ef705cb98cde (patch)
treeb72c7962ac001db41b263c5677f3d836fb2ecd91 /chrome/browser/renderer_host/render_widget_host_unittest.cc
parent5e7f6db03fa38582b990a4ec4d5a6d520565c468 (diff)
downloadchromium_src-22f06cb077391d9499ded311af99ef705cb98cde.zip
chromium_src-22f06cb077391d9499ded311af99ef705cb98cde.tar.gz
chromium_src-22f06cb077391d9499ded311af99ef705cb98cde.tar.bz2
Make render_widget_host_unittest compile and run on POSIX.
Review URL: http://codereview.chromium.org/20115 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@9288 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/renderer_host/render_widget_host_unittest.cc')
-rw-r--r--chrome/browser/renderer_host/render_widget_host_unittest.cc22
1 files changed, 20 insertions, 2 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_unittest.cc b/chrome/browser/renderer_host/render_widget_host_unittest.cc
index bb8c791..4f0bfb6 100644
--- a/chrome/browser/renderer_host/render_widget_host_unittest.cc
+++ b/chrome/browser/renderer_host/render_widget_host_unittest.cc
@@ -10,15 +10,21 @@
#include "chrome/common/render_messages.h"
#include "testing/gtest/include/gtest/gtest.h"
+#if defined(OS_POSIX)
+#include "skia/ext/platform_canvas.h"
+#endif
+
namespace {
// RenderWidgetHostProcess -----------------------------------------------------
class RenderWidgetHostProcess : public MockRenderProcessHost {
public:
- RenderWidgetHostProcess(Profile* profile)
+ explicit RenderWidgetHostProcess(Profile* profile)
: MockRenderProcessHost(profile),
+#if defined(OS_WIN)
current_paint_buf_(NULL),
+#endif
paint_msg_should_reply_(false),
paint_msg_reply_flags_(0) {
// DANGER! This is a hack. The RenderWidgetHost checks the channel to see
@@ -48,8 +54,12 @@ class RenderWidgetHostProcess : public MockRenderProcessHost {
const base::TimeDelta& max_delay,
IPC::Message* msg);
+#if defined(OS_WIN)
scoped_ptr<base::SharedMemory> current_paint_buf_;
-
+#elif defined(OS_POSIX)
+ skia::PlatformCanvas canvas;
+#endif
+
// Set to true when WaitForPaintMsg should return a successful paint messaage
// reply. False implies timeout.
bool paint_msg_should_reply_;
@@ -65,12 +75,20 @@ void RenderWidgetHostProcess::InitPaintRectParams(
ViewHostMsg_PaintRect_Params* params) {
// Create the shared backing store.
const int w = 100, h = 100;
+
+#if defined(OS_WIN)
int pixel_size = w * h * 4;
+
current_paint_buf_.reset(new base::SharedMemory());
ASSERT_TRUE(current_paint_buf_->Create(std::wstring(), false, true,
pixel_size));
params->bitmap = current_paint_buf_->handle();
+#elif defined(OS_POSIX)
+ ASSERT_TRUE(canvas.initialize(w, h, true));
+ params->bitmap = canvas.getDevice()->accessBitmap(false);
+#endif
+
params->bitmap_rect = gfx::Rect(0, 0, w, h);
params->view_size = gfx::Size(w, h);
params->flags = paint_msg_reply_flags_;