Index: cc/tiles/software_image_decode_controller_unittest.cc |
diff --git a/cc/tiles/software_image_decode_controller_unittest.cc b/cc/tiles/software_image_decode_controller_unittest.cc |
index df3d9d7990e0df6c2606633757d84ce72504b5ee..67ad6668d2536f70267a8e7ace1e6185f058af6a 100644 |
--- a/cc/tiles/software_image_decode_controller_unittest.cc |
+++ b/cc/tiles/software_image_decode_controller_unittest.cc |
@@ -5,7 +5,7 @@ |
#include "cc/tiles/software_image_decode_controller.h" |
#include "cc/playback/draw_image.h" |
-#include "cc/raster/tile_task.h" |
+#include "cc/test/simple_task_runner.h" |
#include "testing/gtest/include/gtest/gtest.h" |
#include "third_party/skia/include/core/SkRefCnt.h" |
@@ -374,6 +374,8 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageSameImage) { |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task.get() == another_task.get()); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
+ |
controller.UnrefImage(draw_image); |
controller.UnrefImage(draw_image); |
} |
@@ -423,6 +425,10 @@ TEST(SoftwareImageDecodeControllerTest, |
EXPECT_TRUE(high_quality_task.get() != low_quality_task.get()); |
EXPECT_TRUE(medium_quality_task.get() != low_quality_task.get()); |
+ SimpleTaskRunner::ProcessTask(high_quality_task.get()); |
+ SimpleTaskRunner::ProcessTask(medium_quality_task.get()); |
+ SimpleTaskRunner::ProcessTask(low_quality_task.get()); |
+ |
controller.UnrefImage(high_quality_draw_image); |
controller.UnrefImage(low_quality_draw_image); |
} |
@@ -454,6 +460,9 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageSameImageDifferentSize) { |
EXPECT_TRUE(quarter_size_task); |
EXPECT_TRUE(half_size_task.get() != quarter_size_task.get()); |
+ SimpleTaskRunner::ProcessTask(half_size_task.get()); |
+ SimpleTaskRunner::ProcessTask(quarter_size_task.get()); |
+ |
controller.UnrefImage(half_size_draw_image); |
controller.UnrefImage(quarter_size_draw_image); |
} |
@@ -485,6 +494,9 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageDifferentImage) { |
EXPECT_TRUE(second_task); |
EXPECT_TRUE(first_task.get() != second_task.get()); |
+ SimpleTaskRunner::ProcessTask(first_task.get()); |
+ SimpleTaskRunner::ProcessTask(second_task.get()); |
+ |
controller.UnrefImage(first_draw_image); |
controller.UnrefImage(second_draw_image); |
} |
@@ -504,8 +516,8 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageAlreadyDecoded) { |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task); |
- // TODO(prashant.n): Implement proper task life cycle. crbug.com/599863. |
- task->RunOnWorkerThread(); |
+ SimpleTaskRunner::ScheduleTask(task.get()); |
+ SimpleTaskRunner::RunTask(task.get()); |
scoped_refptr<TileTask> another_task; |
need_unref = controller.GetTaskForImageAndRef( |
@@ -513,7 +525,7 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageAlreadyDecoded) { |
EXPECT_TRUE(need_unref); |
EXPECT_FALSE(another_task); |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::CompleteTask(task.get()); |
controller.UnrefImage(draw_image); |
controller.UnrefImage(draw_image); |
@@ -534,7 +546,8 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageAlreadyPrerolled) { |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task); |
- task->RunOnWorkerThread(); |
+ SimpleTaskRunner::ScheduleTask(task.get()); |
+ SimpleTaskRunner::RunTask(task.get()); |
scoped_refptr<TileTask> another_task; |
need_unref = controller.GetTaskForImageAndRef( |
@@ -542,7 +555,7 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageAlreadyPrerolled) { |
EXPECT_TRUE(need_unref); |
EXPECT_FALSE(another_task); |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::CompleteTask(task.get()); |
scoped_refptr<TileTask> third_task; |
need_unref = controller.GetTaskForImageAndRef( |
@@ -577,7 +590,8 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageCanceledGetsNewTask) { |
EXPECT_TRUE(another_task.get() == task.get()); |
// Didn't run the task, complete it (it was canceled). |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::CancelTask(task.get()); |
+ SimpleTaskRunner::CompleteTask(task.get()); |
// Fully cancel everything (so the raster would unref things). |
controller.UnrefImage(draw_image); |
@@ -591,6 +605,8 @@ TEST(SoftwareImageDecodeControllerTest, GetTaskForImageCanceledGetsNewTask) { |
EXPECT_TRUE(third_task); |
EXPECT_FALSE(third_task.get() == task.get()); |
+ SimpleTaskRunner::ProcessTask(third_task.get()); |
+ |
controller.UnrefImage(draw_image); |
} |
@@ -617,7 +633,8 @@ TEST(SoftwareImageDecodeControllerTest, |
EXPECT_TRUE(another_task.get() == task.get()); |
// Didn't run the task, complete it (it was canceled). |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::CancelTask(task.get()); |
+ SimpleTaskRunner::CompleteTask(task.get()); |
// Note that here, everything is reffed, but a new task is created. This is |
// possible with repeated schedule/cancel operations. |
@@ -628,6 +645,8 @@ TEST(SoftwareImageDecodeControllerTest, |
EXPECT_TRUE(third_task); |
EXPECT_FALSE(third_task.get() == task.get()); |
+ SimpleTaskRunner::ProcessTask(third_task.get()); |
+ |
// 3 Unrefs! |
controller.UnrefImage(draw_image); |
controller.UnrefImage(draw_image); |
@@ -649,9 +668,7 @@ TEST(SoftwareImageDecodeControllerTest, GetDecodedImageForDraw) { |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task); |
- task->RunOnWorkerThread(); |
- |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
DecodedDrawImage decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
@@ -684,9 +701,7 @@ TEST(SoftwareImageDecodeControllerTest, |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task); |
- task->RunOnWorkerThread(); |
- |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
DecodedDrawImage decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
@@ -786,9 +801,7 @@ TEST(SoftwareImageDecodeControllerTest, |
EXPECT_TRUE(need_unref); |
EXPECT_TRUE(task); |
- task->RunOnWorkerThread(); |
- |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
DecodedDrawImage another_decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
@@ -837,9 +850,7 @@ TEST(SoftwareImageDecodeControllerTest, |
// instead of decoding again. |
controller.DrawWithImageFinished(draw_image, decoded_draw_image); |
- task->RunOnWorkerThread(); |
- |
- task->OnTaskCompleted(); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
DecodedDrawImage another_decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
@@ -915,6 +926,8 @@ TEST(SoftwareImageDecodeControllerTest, LowQualityFilterIsHandled) { |
EXPECT_TRUE(task); |
EXPECT_TRUE(need_unref); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
+ |
DecodedDrawImage decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
EXPECT_TRUE(decoded_draw_image.image()); |
@@ -941,6 +954,8 @@ TEST(SoftwareImageDecodeControllerTest, LowQualityScaledSubrectIsHandled) { |
EXPECT_TRUE(task); |
EXPECT_TRUE(need_unref); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
+ |
DecodedDrawImage decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
EXPECT_TRUE(decoded_draw_image.image()); |
@@ -969,6 +984,8 @@ TEST(SoftwareImageDecodeControllerTest, NoneQualityScaledSubrectIsHandled) { |
EXPECT_TRUE(task); |
EXPECT_TRUE(need_unref); |
+ SimpleTaskRunner::ProcessTask(task.get()); |
+ |
DecodedDrawImage decoded_draw_image = |
controller.GetDecodedImageForDraw(draw_image); |
EXPECT_TRUE(decoded_draw_image.image()); |