Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1520)

Unified Diff: cc/tiles/software_image_decode_controller_unittest.cc

Issue 1997743002: cc: Implement test task runner for tests. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@remove_schedule_complete
Patch Set: extended to SoftwareImageDecodeControllerTest Created 4 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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());
« cc/test/simple_task_runner.h ('K') | « cc/tiles/gpu_image_decode_controller_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698