Index: media/filters/skcanvas_video_renderer_unittest.cc |
diff --git a/media/filters/skcanvas_video_renderer_unittest.cc b/media/filters/skcanvas_video_renderer_unittest.cc |
index 4bd2a18f919b5ce7ad0e63c51a065f8d808ecb57..799cebbc00ccf025662a96eea169ad67d74a3e7c 100644 |
--- a/media/filters/skcanvas_video_renderer_unittest.cc |
+++ b/media/filters/skcanvas_video_renderer_unittest.cc |
@@ -2,6 +2,8 @@ |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
+#include "base/single_thread_task_runner.h" |
+#include "base/thread_task_runner_handle.h" |
#include "media/base/video_frame.h" |
#include "media/base/video_util.h" |
#include "testing/gtest/include/gtest/gtest.h" |
@@ -83,6 +85,9 @@ class SkCanvasVideoRendererTest : public testing::Test { |
SkCanvas target_canvas_; |
+ // Needed because SkCanvasVideoRenderer uses OneShotTimer. |
+ base::ThreadTaskRunnerHandle task_runner_handle_; |
scherkus (not reviewing)
2014/10/28 23:24:19
pretty sure you can replace all of this new code w
|
+ |
DISALLOW_COPY_AND_ASSIGN(SkCanvasVideoRendererTest); |
}; |
@@ -93,19 +98,48 @@ static SkBitmap AllocBitmap(int width, int height) { |
return bitmap; |
} |
+class FakeSingleThreadTaskRunner : public base::SingleThreadTaskRunner { |
+ public: |
+ FakeSingleThreadTaskRunner() {} |
+ |
+ // base::SingleThreadTaskRunner implementation. |
+ virtual bool PostDelayedTask(const tracked_objects::Location& from_here, |
+ const base::Closure& task, |
+ base::TimeDelta delay) override { |
+ return true; |
+ } |
+ |
+ virtual bool RunsTasksOnCurrentThread() const override { return true; } |
+ |
+ // base::SequencedTaskRunner implementation |
+ virtual bool PostNonNestableDelayedTask( |
+ const tracked_objects::Location& from_here, |
+ const base::Closure& task, |
+ base::TimeDelta delay) override { |
+ return false; |
+ } |
+ |
+ protected: |
+ ~FakeSingleThreadTaskRunner() override {} |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(FakeSingleThreadTaskRunner); |
+}; |
+ |
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))), |
- cropped_frame_(VideoFrame::CreateFrame( |
- VideoFrame::YV12, |
- gfx::Size(16, 16), |
- gfx::Rect(6, 6, 8, 6), |
- gfx::Size(8, 6), |
- base::TimeDelta::FromMilliseconds(4))), |
- target_canvas_(AllocBitmap(kWidth, kHeight)) { |
+ larger_frame_( |
+ VideoFrame::CreateBlackFrame(gfx::Size(kWidth * 2, kHeight * 2))), |
+ smaller_frame_( |
+ VideoFrame::CreateBlackFrame(gfx::Size(kWidth / 2, kHeight / 2))), |
+ cropped_frame_( |
+ VideoFrame::CreateFrame(VideoFrame::YV12, |
+ gfx::Size(16, 16), |
+ gfx::Rect(6, 6, 8, 6), |
+ gfx::Size(8, 6), |
+ base::TimeDelta::FromMilliseconds(4))), |
+ target_canvas_(AllocBitmap(kWidth, kHeight)), |
+ task_runner_handle_(new FakeSingleThreadTaskRunner) { |
// Give each frame a unique timestamp. |
natural_frame_->set_timestamp(base::TimeDelta::FromMilliseconds(1)); |
larger_frame_->set_timestamp(base::TimeDelta::FromMilliseconds(2)); |