@@ -2532,81 +2532,79 @@ TEST_F(DisplayListTest, RTreeRenderCulling) {
25322532 main_receiver.drawRect ({20 , 20 , 30 , 30 });
25332533 auto main = main_builder.Build ();
25342534
2535+ auto test = [main](SkIRect cull_rect, const sk_sp<DisplayList>& expected) {
2536+ { // Test SkIRect culling
2537+ DisplayListBuilder culling_builder;
2538+ main->Dispatch (ToReceiver (culling_builder), cull_rect);
2539+
2540+ EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2541+ }
2542+
2543+ { // Test SkRect culling
2544+ DisplayListBuilder culling_builder;
2545+ main->Dispatch (ToReceiver (culling_builder), SkRect::Make (cull_rect));
2546+
2547+ EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2548+ }
2549+ };
2550+
25352551 { // No rects
2536- SkRect cull_rect = {11 , 11 , 19 , 19 };
2552+ SkIRect cull_rect = {11 , 11 , 19 , 19 };
25372553
25382554 DisplayListBuilder expected_builder;
25392555 auto expected = expected_builder.Build ();
25402556
2541- DisplayListBuilder culling_builder (cull_rect);
2542- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2543-
2544- EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2557+ test (cull_rect, expected);
25452558 }
25462559
25472560 { // Rect 1
2548- SkRect cull_rect = {9 , 9 , 19 , 19 };
2561+ SkIRect cull_rect = {9 , 9 , 19 , 19 };
25492562
25502563 DisplayListBuilder expected_builder;
25512564 DlOpReceiver& expected_receiver = ToReceiver (expected_builder);
25522565 expected_receiver.drawRect ({0 , 0 , 10 , 10 });
25532566 auto expected = expected_builder.Build ();
25542567
2555- DisplayListBuilder culling_builder (cull_rect);
2556- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2557-
2558- EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2568+ test (cull_rect, expected);
25592569 }
25602570
25612571 { // Rect 2
2562- SkRect cull_rect = {11 , 9 , 21 , 19 };
2572+ SkIRect cull_rect = {11 , 9 , 21 , 19 };
25632573
25642574 DisplayListBuilder expected_builder;
25652575 DlOpReceiver& expected_receiver = ToReceiver (expected_builder);
25662576 expected_receiver.drawRect ({20 , 0 , 30 , 10 });
25672577 auto expected = expected_builder.Build ();
25682578
2569- DisplayListBuilder culling_builder (cull_rect);
2570- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2571-
2572- EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2579+ test (cull_rect, expected);
25732580 }
25742581
25752582 { // Rect 3
2576- SkRect cull_rect = {9 , 11 , 19 , 21 };
2583+ SkIRect cull_rect = {9 , 11 , 19 , 21 };
25772584
25782585 DisplayListBuilder expected_builder;
25792586 DlOpReceiver& expected_receiver = ToReceiver (expected_builder);
25802587 expected_receiver.drawRect ({0 , 20 , 10 , 30 });
25812588 auto expected = expected_builder.Build ();
25822589
2583- DisplayListBuilder culling_builder (cull_rect);
2584- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2585-
2586- EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2590+ test (cull_rect, expected);
25872591 }
25882592
25892593 { // Rect 4
2590- SkRect cull_rect = {11 , 11 , 21 , 21 };
2594+ SkIRect cull_rect = {11 , 11 , 21 , 21 };
25912595
25922596 DisplayListBuilder expected_builder;
25932597 DlOpReceiver& expected_receiver = ToReceiver (expected_builder);
25942598 expected_receiver.drawRect ({20 , 20 , 30 , 30 });
25952599 auto expected = expected_builder.Build ();
25962600
2597- DisplayListBuilder culling_builder (cull_rect);
2598- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2599-
2600- EXPECT_TRUE (DisplayListsEQ_Verbose (culling_builder.Build (), expected));
2601+ test (cull_rect, expected);
26012602 }
26022603
26032604 { // All 4 rects
2604- SkRect cull_rect = {9 , 9 , 21 , 21 };
2605-
2606- DisplayListBuilder culling_builder (cull_rect);
2607- main->Dispatch (ToReceiver (culling_builder), cull_rect);
2605+ SkIRect cull_rect = {9 , 9 , 21 , 21 };
26082606
2609- EXPECT_TRUE ( DisplayListsEQ_Verbose (culling_builder. Build () , main) );
2607+ test (cull_rect , main);
26102608 }
26112609}
26122610
0 commit comments