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

Side by Side Diff: cc/output/overlay_unittest.cc

Issue 1175113010: cc: Rename visible_content_rect and content stuff on quads. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rename-visible-content-rect: moreandroid Created 5 years, 6 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 unified diff | Download patch
« no previous file with comments | « cc/output/overlay_strategy_single_on_top.cc ('k') | cc/output/renderer_pixeltest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "cc/base/scoped_ptr_vector.h" 5 #include "cc/base/scoped_ptr_vector.h"
6 #include "cc/output/compositor_frame_metadata.h" 6 #include "cc/output/compositor_frame_metadata.h"
7 #include "cc/output/gl_renderer.h" 7 #include "cc/output/gl_renderer.h"
8 #include "cc/output/output_surface.h" 8 #include "cc/output/output_surface.h"
9 #include "cc/output/output_surface_client.h" 9 #include "cc/output/output_surface_client.h"
10 #include "cc/output/overlay_candidate_validator.h" 10 #include "cc/output/overlay_candidate_validator.h"
(...skipping 260 matching lines...) Expand 10 before | Expand all | Expand 10 after
271 271
272 EXPECT_EQ(expected->shared_quad_state_list.size(), 272 EXPECT_EQ(expected->shared_quad_state_list.size(),
273 actual->shared_quad_state_list.size()); 273 actual->shared_quad_state_list.size());
274 EXPECT_EQ(expected->quad_list.size(), actual->quad_list.size()); 274 EXPECT_EQ(expected->quad_list.size(), actual->quad_list.size());
275 275
276 for (auto exp_iter = expected->quad_list.cbegin(), 276 for (auto exp_iter = expected->quad_list.cbegin(),
277 act_iter = actual->quad_list.cbegin(); 277 act_iter = actual->quad_list.cbegin();
278 exp_iter != expected->quad_list.cend(); 278 exp_iter != expected->quad_list.cend();
279 ++exp_iter, ++act_iter) { 279 ++exp_iter, ++act_iter) {
280 EXPECT_EQ(exp_iter->rect.ToString(), act_iter->rect.ToString()); 280 EXPECT_EQ(exp_iter->rect.ToString(), act_iter->rect.ToString());
281 EXPECT_EQ(exp_iter->shared_quad_state->content_bounds.ToString(), 281 EXPECT_EQ(exp_iter->shared_quad_state->quad_layer_bounds.ToString(),
282 act_iter->shared_quad_state->content_bounds.ToString()); 282 act_iter->shared_quad_state->quad_layer_bounds.ToString());
283 } 283 }
284 } 284 }
285 } 285 }
286 286
287 TEST(OverlayTest, NoOverlaysByDefault) { 287 TEST(OverlayTest, NoOverlaysByDefault) {
288 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create(); 288 scoped_refptr<TestContextProvider> provider = TestContextProvider::Create();
289 OverlayOutputSurface output_surface(provider); 289 OverlayOutputSurface output_surface(provider);
290 EXPECT_EQ(NULL, output_surface.GetOverlayCandidateValidator()); 290 EXPECT_EQ(NULL, output_surface.GetOverlayCandidateValidator());
291 291
292 output_surface.InitWithSingleOverlayValidator(); 292 output_surface.InitWithSingleOverlayValidator();
(...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after
539 ASSERT_EQ(1U, pass_list.size()); 539 ASSERT_EQ(1U, pass_list.size());
540 EXPECT_EQ(0U, candidate_list.size()); 540 EXPECT_EQ(0U, candidate_list.size());
541 } 541 }
542 542
543 TEST_F(SingleOverlayOnTopTest, RejectNonAxisAlignedTransform) { 543 TEST_F(SingleOverlayOnTopTest, RejectNonAxisAlignedTransform) {
544 scoped_ptr<RenderPass> pass = CreateRenderPass(); 544 scoped_ptr<RenderPass> pass = CreateRenderPass();
545 CreateFullscreenCandidateQuad(resource_provider_.get(), 545 CreateFullscreenCandidateQuad(resource_provider_.get(),
546 pass->shared_quad_state_list.back(), 546 pass->shared_quad_state_list.back(),
547 pass.get()); 547 pass.get());
548 pass->shared_quad_state_list.back() 548 pass->shared_quad_state_list.back()
549 ->content_to_target_transform.RotateAboutXAxis(45.f); 549 ->quad_to_target_transform.RotateAboutXAxis(45.f);
550 550
551 RenderPassList pass_list; 551 RenderPassList pass_list;
552 pass_list.push_back(pass.Pass()); 552 pass_list.push_back(pass.Pass());
553 OverlayCandidateList candidate_list; 553 OverlayCandidateList candidate_list;
554 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 554 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
555 ASSERT_EQ(1U, pass_list.size()); 555 ASSERT_EQ(1U, pass_list.size());
556 EXPECT_EQ(0U, candidate_list.size()); 556 EXPECT_EQ(0U, candidate_list.size());
557 } 557 }
558 558
559 TEST_F(SingleOverlayOnTopTest, AllowVerticalFlip) { 559 TEST_F(SingleOverlayOnTopTest, AllowVerticalFlip) {
560 gfx::Rect rect = kOverlayRect; 560 gfx::Rect rect = kOverlayRect;
561 rect.set_width(rect.width() / 2); 561 rect.set_width(rect.width() / 2);
562 rect.Offset(0, -rect.height()); 562 rect.Offset(0, -rect.height());
563 scoped_ptr<RenderPass> pass = CreateRenderPass(); 563 scoped_ptr<RenderPass> pass = CreateRenderPass();
564 CreateCandidateQuadAt(resource_provider_.get(), 564 CreateCandidateQuadAt(resource_provider_.get(),
565 pass->shared_quad_state_list.back(), pass.get(), rect); 565 pass->shared_quad_state_list.back(), pass.get(), rect);
566 pass->shared_quad_state_list.back()->content_to_target_transform.Scale(2.0f, 566 pass->shared_quad_state_list.back()->quad_to_target_transform.Scale(2.0f,
567 -1.0f); 567 -1.0f);
568 568
569 RenderPassList pass_list; 569 RenderPassList pass_list;
570 pass_list.push_back(pass.Pass()); 570 pass_list.push_back(pass.Pass());
571 OverlayCandidateList candidate_list; 571 OverlayCandidateList candidate_list;
572 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 572 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
573 ASSERT_EQ(1U, pass_list.size()); 573 ASSERT_EQ(1U, pass_list.size());
574 ASSERT_EQ(2U, candidate_list.size()); 574 ASSERT_EQ(2U, candidate_list.size());
575 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_FLIP_VERTICAL, 575 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_FLIP_VERTICAL,
576 candidate_list.back().transform); 576 candidate_list.back().transform);
577 } 577 }
578 578
579 TEST_F(SingleOverlayOnTopTest, AllowHorizontalFlip) { 579 TEST_F(SingleOverlayOnTopTest, AllowHorizontalFlip) {
580 gfx::Rect rect = kOverlayRect; 580 gfx::Rect rect = kOverlayRect;
581 rect.set_height(rect.height() / 2); 581 rect.set_height(rect.height() / 2);
582 rect.Offset(-rect.width(), 0); 582 rect.Offset(-rect.width(), 0);
583 scoped_ptr<RenderPass> pass = CreateRenderPass(); 583 scoped_ptr<RenderPass> pass = CreateRenderPass();
584 CreateCandidateQuadAt(resource_provider_.get(), 584 CreateCandidateQuadAt(resource_provider_.get(),
585 pass->shared_quad_state_list.back(), pass.get(), rect); 585 pass->shared_quad_state_list.back(), pass.get(), rect);
586 pass->shared_quad_state_list.back()->content_to_target_transform.Scale(-1.0f, 586 pass->shared_quad_state_list.back()->quad_to_target_transform.Scale(-1.0f,
587 2.0f); 587 2.0f);
588 588
589 RenderPassList pass_list; 589 RenderPassList pass_list;
590 pass_list.push_back(pass.Pass()); 590 pass_list.push_back(pass.Pass());
591 OverlayCandidateList candidate_list; 591 OverlayCandidateList candidate_list;
592 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 592 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
593 ASSERT_EQ(1U, pass_list.size()); 593 ASSERT_EQ(1U, pass_list.size());
594 ASSERT_EQ(2U, candidate_list.size()); 594 ASSERT_EQ(2U, candidate_list.size());
595 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_FLIP_HORIZONTAL, 595 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_FLIP_HORIZONTAL,
596 candidate_list.back().transform); 596 candidate_list.back().transform);
597 } 597 }
598 598
599 TEST_F(SingleOverlayOnTopTest, AllowPositiveScaleTransform) { 599 TEST_F(SingleOverlayOnTopTest, AllowPositiveScaleTransform) {
600 gfx::Rect rect = kOverlayRect; 600 gfx::Rect rect = kOverlayRect;
601 rect.set_width(rect.width() / 2); 601 rect.set_width(rect.width() / 2);
602 scoped_ptr<RenderPass> pass = CreateRenderPass(); 602 scoped_ptr<RenderPass> pass = CreateRenderPass();
603 CreateCandidateQuadAt(resource_provider_.get(), 603 CreateCandidateQuadAt(resource_provider_.get(),
604 pass->shared_quad_state_list.back(), pass.get(), rect); 604 pass->shared_quad_state_list.back(), pass.get(), rect);
605 pass->shared_quad_state_list.back()->content_to_target_transform.Scale(2.0f, 605 pass->shared_quad_state_list.back()->quad_to_target_transform.Scale(2.0f,
606 1.0f); 606 1.0f);
607 607
608 RenderPassList pass_list; 608 RenderPassList pass_list;
609 pass_list.push_back(pass.Pass()); 609 pass_list.push_back(pass.Pass());
610 OverlayCandidateList candidate_list; 610 OverlayCandidateList candidate_list;
611 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 611 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
612 ASSERT_EQ(1U, pass_list.size()); 612 ASSERT_EQ(1U, pass_list.size());
613 EXPECT_EQ(2U, candidate_list.size()); 613 EXPECT_EQ(2U, candidate_list.size());
614 } 614 }
615 615
616 TEST_F(SingleOverlayOnTopTest, Allow90DegreeRotation) { 616 TEST_F(SingleOverlayOnTopTest, Allow90DegreeRotation) {
617 gfx::Rect rect = kOverlayRect; 617 gfx::Rect rect = kOverlayRect;
618 rect.Offset(0, -rect.height()); 618 rect.Offset(0, -rect.height());
619 scoped_ptr<RenderPass> pass = CreateRenderPass(); 619 scoped_ptr<RenderPass> pass = CreateRenderPass();
620 CreateCandidateQuadAt(resource_provider_.get(), 620 CreateCandidateQuadAt(resource_provider_.get(),
621 pass->shared_quad_state_list.back(), pass.get(), rect); 621 pass->shared_quad_state_list.back(), pass.get(), rect);
622 pass->shared_quad_state_list.back() 622 pass->shared_quad_state_list.back()
623 ->content_to_target_transform.RotateAboutZAxis(90.f); 623 ->quad_to_target_transform.RotateAboutZAxis(90.f);
624 624
625 RenderPassList pass_list; 625 RenderPassList pass_list;
626 pass_list.push_back(pass.Pass()); 626 pass_list.push_back(pass.Pass());
627 OverlayCandidateList candidate_list; 627 OverlayCandidateList candidate_list;
628 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 628 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
629 ASSERT_EQ(1U, pass_list.size()); 629 ASSERT_EQ(1U, pass_list.size());
630 ASSERT_EQ(2U, candidate_list.size()); 630 ASSERT_EQ(2U, candidate_list.size());
631 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_90, candidate_list.back().transform); 631 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_90, candidate_list.back().transform);
632 } 632 }
633 633
634 TEST_F(SingleOverlayOnTopTest, Allow180DegreeRotation) { 634 TEST_F(SingleOverlayOnTopTest, Allow180DegreeRotation) {
635 gfx::Rect rect = kOverlayRect; 635 gfx::Rect rect = kOverlayRect;
636 rect.Offset(-rect.width(), -rect.height()); 636 rect.Offset(-rect.width(), -rect.height());
637 scoped_ptr<RenderPass> pass = CreateRenderPass(); 637 scoped_ptr<RenderPass> pass = CreateRenderPass();
638 CreateCandidateQuadAt(resource_provider_.get(), 638 CreateCandidateQuadAt(resource_provider_.get(),
639 pass->shared_quad_state_list.back(), pass.get(), rect); 639 pass->shared_quad_state_list.back(), pass.get(), rect);
640 pass->shared_quad_state_list.back() 640 pass->shared_quad_state_list.back()
641 ->content_to_target_transform.RotateAboutZAxis(180.f); 641 ->quad_to_target_transform.RotateAboutZAxis(180.f);
642 642
643 RenderPassList pass_list; 643 RenderPassList pass_list;
644 pass_list.push_back(pass.Pass()); 644 pass_list.push_back(pass.Pass());
645 OverlayCandidateList candidate_list; 645 OverlayCandidateList candidate_list;
646 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 646 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
647 ASSERT_EQ(1U, pass_list.size()); 647 ASSERT_EQ(1U, pass_list.size());
648 ASSERT_EQ(2U, candidate_list.size()); 648 ASSERT_EQ(2U, candidate_list.size());
649 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_180, candidate_list.back().transform); 649 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_180, candidate_list.back().transform);
650 } 650 }
651 651
652 TEST_F(SingleOverlayOnTopTest, Allow270DegreeRotation) { 652 TEST_F(SingleOverlayOnTopTest, Allow270DegreeRotation) {
653 gfx::Rect rect = kOverlayRect; 653 gfx::Rect rect = kOverlayRect;
654 rect.Offset(-rect.width(), 0); 654 rect.Offset(-rect.width(), 0);
655 scoped_ptr<RenderPass> pass = CreateRenderPass(); 655 scoped_ptr<RenderPass> pass = CreateRenderPass();
656 CreateCandidateQuadAt(resource_provider_.get(), 656 CreateCandidateQuadAt(resource_provider_.get(),
657 pass->shared_quad_state_list.back(), pass.get(), rect); 657 pass->shared_quad_state_list.back(), pass.get(), rect);
658 pass->shared_quad_state_list.back() 658 pass->shared_quad_state_list.back()
659 ->content_to_target_transform.RotateAboutZAxis(270.f); 659 ->quad_to_target_transform.RotateAboutZAxis(270.f);
660 660
661 RenderPassList pass_list; 661 RenderPassList pass_list;
662 pass_list.push_back(pass.Pass()); 662 pass_list.push_back(pass.Pass());
663 OverlayCandidateList candidate_list; 663 OverlayCandidateList candidate_list;
664 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list); 664 overlay_processor_->ProcessForOverlays(&pass_list, &candidate_list);
665 ASSERT_EQ(1U, pass_list.size()); 665 ASSERT_EQ(1U, pass_list.size());
666 ASSERT_EQ(2U, candidate_list.size()); 666 ASSERT_EQ(2U, candidate_list.size());
667 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_270, candidate_list.back().transform); 667 EXPECT_EQ(gfx::OVERLAY_TRANSFORM_ROTATE_270, candidate_list.back().transform);
668 } 668 }
669 669
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after
1182 renderer_->BeginDrawingFrame(&frame3); 1182 renderer_->BeginDrawingFrame(&frame3);
1183 renderer_->FinishDrawingFrame(&frame3); 1183 renderer_->FinishDrawingFrame(&frame3);
1184 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); 1184 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1));
1185 SwapBuffers(); 1185 SwapBuffers();
1186 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); 1186 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1));
1187 Mock::VerifyAndClearExpectations(&scheduler_); 1187 Mock::VerifyAndClearExpectations(&scheduler_);
1188 } 1188 }
1189 1189
1190 } // namespace 1190 } // namespace
1191 } // namespace cc 1191 } // namespace cc
OLDNEW
« no previous file with comments | « cc/output/overlay_strategy_single_on_top.cc ('k') | cc/output/renderer_pixeltest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698