1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_PUBLIC_TEST_RENDER_WIDGET_TEST_H_
6 #define CONTENT_PUBLIC_TEST_RENDER_WIDGET_TEST_H_
8 #include "base/basictypes.h"
9 #include "base/files/file_path.h"
10 #include "content/public/test/render_view_test.h"
20 class RenderWidgetTest
: public RenderViewTest
{
25 static const int kNumBytesPerPixel
;
26 static const int kLargeWidth
;
27 static const int kLargeHeight
;
28 static const int kSmallWidth
;
29 static const int kSmallHeight
;
30 static const int kTextPositionX
;
31 static const int kTextPositionY
;
32 static const uint32 kRedARGB
;
34 // Helper function which calls OnMsgPaintAtSize and also paints the result
35 // in the given bitmap. The widget is resized to |page_size| before we paint
36 // and the final image is resized to |desired_size|. This method is virtual so
37 // that TestResizeAndPaint() can be reused by subclasses of this test class.
38 virtual void ResizeAndPaint(const gfx::Size
& page_size
,
39 const gfx::Size
& desired_size
,
42 // Test for ResizeAndPaint.
43 void TestResizeAndPaint();
45 // Test for OnResize and Resize.
48 // Helper function which returns true if the given bitmap contains the given
49 // ARGB color and false otherwise.
50 bool ImageContainsColor(const SkBitmap
& bitmap
, uint32 argb_color
);
52 // This can be used for debugging if you want to output a bitmap
55 // base::CreateTemporaryFile(&tmp_path);
56 // OutputBitmapToFile(bitmap, tmp_path);
57 // VLOG(0) << "Bitmap image stored at: " << tmp_path.value();
58 void OutputBitmapToFile(const SkBitmap
& bitmap
,
59 const base::FilePath
& file_path
);
62 } // namespace content
64 #endif // CONTENT_PUBLIC_TEST_RENDER_WIDGET_TEST_H_