Index: webkit/media/skcanvas_video_renderer_unittest.cc |
diff --git a/webkit/media/skcanvas_video_renderer_unittest.cc b/webkit/media/skcanvas_video_renderer_unittest.cc |
deleted file mode 100644 |
index f83d75a381030c2d9eb476ee814619919f1edd7e..0000000000000000000000000000000000000000 |
--- a/webkit/media/skcanvas_video_renderer_unittest.cc |
+++ /dev/null |
@@ -1,202 +0,0 @@ |
-// Copyright (c) 2012 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. |
- |
-#include "media/base/video_frame.h" |
-#include "media/base/video_util.h" |
-#include "testing/gtest/include/gtest/gtest.h" |
-#include "third_party/skia/include/core/SkCanvas.h" |
-#include "third_party/skia/include/core/SkDevice.h" |
-#include "webkit/media/skcanvas_video_renderer.h" |
- |
-using media::VideoFrame; |
- |
-namespace webkit_media { |
- |
-static const int kWidth = 320; |
-static const int kHeight = 240; |
-static const gfx::Rect kNaturalRect(0, 0, kWidth, kHeight); |
- |
-// Helper for filling a |canvas| with a solid |color|. |
-void FillCanvas(SkCanvas* canvas, SkColor color) { |
- const SkBitmap& bitmap = canvas->getDevice()->accessBitmap(true); |
- bitmap.lockPixels(); |
- bitmap.eraseColor(color); |
- bitmap.unlockPixels(); |
-} |
- |
-// Helper for returning the color of a solid |canvas|. |
-SkColor GetColor(SkCanvas* canvas) { |
- const SkBitmap& bitmap = canvas->getDevice()->accessBitmap(false); |
- bitmap.lockPixels(); |
- SkColor c = bitmap.getColor(0, 0); |
- bitmap.unlockPixels(); |
- return c; |
-} |
- |
-class SkCanvasVideoRendererTest : public testing::Test { |
- public: |
- enum Color { |
- kRed, |
- kBlue, |
- }; |
- |
- SkCanvasVideoRendererTest(); |
- virtual ~SkCanvasVideoRendererTest(); |
- |
- // Paints to |canvas| using |renderer_| without any frame data. |
- void PaintWithoutFrame(SkCanvas* canvas); |
- |
- // Paints the |video_frame| to the |canvas| using |renderer_|, setting the |
- // color of |video_frame| to |color| first. |
- void Paint(VideoFrame* video_frame, SkCanvas* canvas, Color color); |
- |
- // Getters for various frame sizes. |
- VideoFrame* natural_frame() { return natural_frame_; } |
- VideoFrame* larger_frame() { return larger_frame_; } |
- VideoFrame* smaller_frame() { return smaller_frame_; } |
- |
- // Getters for canvases that trigger the various painting paths. |
- SkCanvas* fast_path_canvas() { return &fast_path_canvas_; } |
- SkCanvas* slow_path_canvas() { return &slow_path_canvas_; } |
- |
- private: |
- SkCanvasVideoRenderer renderer_; |
- |
- scoped_refptr<VideoFrame> natural_frame_; |
- scoped_refptr<VideoFrame> larger_frame_; |
- scoped_refptr<VideoFrame> smaller_frame_; |
- |
- SkDevice fast_path_device_; |
- SkCanvas fast_path_canvas_; |
- SkDevice slow_path_device_; |
- SkCanvas slow_path_canvas_; |
- |
- DISALLOW_COPY_AND_ASSIGN(SkCanvasVideoRendererTest); |
-}; |
- |
-SkCanvasVideoRendererTest::SkCanvasVideoRendererTest() |
- : natural_frame_(VideoFrame::CreateBlackFrame(gfx::Size(kWidth, kHeight))), |
- larger_frame_(VideoFrame::CreateBlackFrame( |
- gfx::Size(kWidth * 2, kHeight * 2))), |
- smaller_frame_(VideoFrame::CreateBlackFrame( |
- gfx::Size(kWidth / 2, kHeight / 2))), |
- fast_path_device_(SkBitmap::kARGB_8888_Config, kWidth, kHeight, true), |
- fast_path_canvas_(&fast_path_device_), |
- slow_path_device_(SkBitmap::kARGB_8888_Config, kWidth, kHeight, false), |
- slow_path_canvas_(&slow_path_device_) { |
- // Give each frame a unique timestamp. |
- natural_frame_->SetTimestamp(base::TimeDelta::FromMilliseconds(1)); |
- larger_frame_->SetTimestamp(base::TimeDelta::FromMilliseconds(2)); |
- smaller_frame_->SetTimestamp(base::TimeDelta::FromMilliseconds(3)); |
-} |
- |
-SkCanvasVideoRendererTest::~SkCanvasVideoRendererTest() {} |
- |
-void SkCanvasVideoRendererTest::PaintWithoutFrame(SkCanvas* canvas) { |
- renderer_.Paint(NULL, canvas, kNaturalRect, 0xFF); |
-} |
- |
-void SkCanvasVideoRendererTest::Paint(VideoFrame* video_frame, |
- SkCanvas* canvas, |
- Color color) { |
- switch (color) { |
- case kRed: |
- media::FillYUV(video_frame, 76, 84, 255); |
- break; |
- case kBlue: |
- media::FillYUV(video_frame, 29, 255, 107); |
- break; |
- } |
- renderer_.Paint(video_frame, canvas, kNaturalRect, 0xFF); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_NoFrame) { |
- // Test that black gets painted over canvas. |
- FillCanvas(fast_path_canvas(), SK_ColorRED); |
- PaintWithoutFrame(fast_path_canvas()); |
- EXPECT_EQ(SK_ColorBLACK, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_NoFrame) { |
- // Test that black gets painted over canvas. |
- FillCanvas(slow_path_canvas(), SK_ColorRED); |
- PaintWithoutFrame(slow_path_canvas()); |
- EXPECT_EQ(SK_ColorBLACK, GetColor(slow_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_Natural) { |
- Paint(natural_frame(), fast_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_Natural) { |
- Paint(natural_frame(), slow_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_Larger) { |
- Paint(natural_frame(), fast_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(fast_path_canvas())); |
- |
- Paint(larger_frame(), fast_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorBLUE, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_Larger) { |
- Paint(natural_frame(), slow_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
- |
- Paint(larger_frame(), slow_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorBLUE, GetColor(slow_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_Smaller) { |
- Paint(natural_frame(), fast_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(fast_path_canvas())); |
- |
- Paint(smaller_frame(), fast_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorBLUE, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_Smaller) { |
- Paint(natural_frame(), slow_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
- |
- Paint(smaller_frame(), slow_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorBLUE, GetColor(slow_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_NoTimestamp) { |
- VideoFrame* video_frame = natural_frame(); |
- video_frame->SetTimestamp(media::kNoTimestamp()); |
- Paint(video_frame, fast_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_NoTimestamp) { |
- VideoFrame* video_frame = natural_frame(); |
- video_frame->SetTimestamp(media::kNoTimestamp()); |
- Paint(video_frame, slow_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, FastPaint_SameVideoFrame) { |
- Paint(natural_frame(), fast_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(fast_path_canvas())); |
- |
- // Fast paints always get painted to the canvas. |
- Paint(natural_frame(), fast_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorBLUE, GetColor(fast_path_canvas())); |
-} |
- |
-TEST_F(SkCanvasVideoRendererTest, SlowPaint_SameVideoFrame) { |
- Paint(natural_frame(), slow_path_canvas(), kRed); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
- |
- // Slow paints can get cached, expect the old color value. |
- Paint(natural_frame(), slow_path_canvas(), kBlue); |
- EXPECT_EQ(SK_ColorRED, GetColor(slow_path_canvas())); |
-} |
- |
-} // namespace webkit_media |