OLD | NEW |
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/gl_renderer.h" | 6 #include "cc/output/gl_renderer.h" |
7 #include "cc/output/output_surface.h" | 7 #include "cc/output/output_surface.h" |
8 #include "cc/output/output_surface_client.h" | 8 #include "cc/output/output_surface_client.h" |
9 #include "cc/output/overlay_candidate_validator.h" | 9 #include "cc/output/overlay_candidate_validator.h" |
10 #include "cc/output/overlay_processor.h" | 10 #include "cc/output/overlay_processor.h" |
(...skipping 551 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
562 | 562 |
563 // Candidate pass was taken out and extra skipped pass added, | 563 // Candidate pass was taken out and extra skipped pass added, |
564 // so only draw 2 quads. | 564 // so only draw 2 quads. |
565 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(2); | 565 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(2); |
566 EXPECT_CALL(scheduler_, | 566 EXPECT_CALL(scheduler_, |
567 Schedule(1, | 567 Schedule(1, |
568 gfx::OVERLAY_TRANSFORM_NONE, | 568 gfx::OVERLAY_TRANSFORM_NONE, |
569 _, | 569 _, |
570 kOverlayRect, | 570 kOverlayRect, |
571 BoundingRect(kUVTopLeft, kUVBottomRight))).Times(1); | 571 BoundingRect(kUVTopLeft, kUVBottomRight))).Times(1); |
572 renderer_->DrawFrame( | 572 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); |
573 &pass_list, NULL, 1.f, viewport_rect, viewport_rect, false); | |
574 | 573 |
575 SwapBuffers(); | 574 SwapBuffers(); |
576 | 575 |
577 Mock::VerifyAndClearExpectations(renderer_.get()); | 576 Mock::VerifyAndClearExpectations(renderer_.get()); |
578 Mock::VerifyAndClearExpectations(&scheduler_); | 577 Mock::VerifyAndClearExpectations(&scheduler_); |
579 } | 578 } |
580 | 579 |
581 TEST_F(GLRendererWithOverlaysTest, OccludedQuadDrawn) { | 580 TEST_F(GLRendererWithOverlaysTest, OccludedQuadDrawn) { |
582 bool use_validator = true; | 581 bool use_validator = true; |
583 Init(use_validator); | 582 Init(use_validator); |
(...skipping 11 matching lines...) Expand all Loading... |
595 CreateCandidateQuad(resource_provider_.get(), | 594 CreateCandidateQuad(resource_provider_.get(), |
596 pass->shared_quad_state_list.back()) | 595 pass->shared_quad_state_list.back()) |
597 .PassAs<DrawQuad>()); | 596 .PassAs<DrawQuad>()); |
598 | 597 |
599 RenderPassList pass_list; | 598 RenderPassList pass_list; |
600 pass_list.push_back(pass.Pass()); | 599 pass_list.push_back(pass.Pass()); |
601 | 600 |
602 // 3 quads in the pass, all should draw. | 601 // 3 quads in the pass, all should draw. |
603 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(3); | 602 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(3); |
604 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); | 603 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); |
605 renderer_->DrawFrame( | 604 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); |
606 &pass_list, NULL, 1.f, viewport_rect, viewport_rect, false); | |
607 | 605 |
608 SwapBuffers(); | 606 SwapBuffers(); |
609 | 607 |
610 Mock::VerifyAndClearExpectations(renderer_.get()); | 608 Mock::VerifyAndClearExpectations(renderer_.get()); |
611 Mock::VerifyAndClearExpectations(&scheduler_); | 609 Mock::VerifyAndClearExpectations(&scheduler_); |
612 } | 610 } |
613 | 611 |
614 TEST_F(GLRendererWithOverlaysTest, NoValidatorNoOverlay) { | 612 TEST_F(GLRendererWithOverlaysTest, NoValidatorNoOverlay) { |
615 bool use_validator = false; | 613 bool use_validator = false; |
616 Init(use_validator); | 614 Init(use_validator); |
(...skipping 11 matching lines...) Expand all Loading... |
628 resource_provider_.get(), pass->shared_quad_state_list.back())); | 626 resource_provider_.get(), pass->shared_quad_state_list.back())); |
629 pass->quad_list.push_back(CreateCheckeredQuad( | 627 pass->quad_list.push_back(CreateCheckeredQuad( |
630 resource_provider_.get(), pass->shared_quad_state_list.back())); | 628 resource_provider_.get(), pass->shared_quad_state_list.back())); |
631 | 629 |
632 RenderPassList pass_list; | 630 RenderPassList pass_list; |
633 pass_list.push_back(pass.Pass()); | 631 pass_list.push_back(pass.Pass()); |
634 | 632 |
635 // Should see no overlays. | 633 // Should see no overlays. |
636 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(3); | 634 EXPECT_CALL(*renderer_, DoDrawQuad(_, _)).Times(3); |
637 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); | 635 EXPECT_CALL(scheduler_, Schedule(_, _, _, _, _)).Times(0); |
638 renderer_->DrawFrame( | 636 renderer_->DrawFrame(&pass_list, 1.f, viewport_rect, viewport_rect, false); |
639 &pass_list, NULL, 1.f, viewport_rect, viewport_rect, false); | |
640 | 637 |
641 SwapBuffers(); | 638 SwapBuffers(); |
642 | 639 |
643 Mock::VerifyAndClearExpectations(renderer_.get()); | 640 Mock::VerifyAndClearExpectations(renderer_.get()); |
644 Mock::VerifyAndClearExpectations(&scheduler_); | 641 Mock::VerifyAndClearExpectations(&scheduler_); |
645 } | 642 } |
646 | 643 |
647 TEST_F(GLRendererWithOverlaysTest, ResourcesExportedAndReturned) { | 644 TEST_F(GLRendererWithOverlaysTest, ResourcesExportedAndReturned) { |
648 bool use_validator = true; | 645 bool use_validator = true; |
649 Init(use_validator); | 646 Init(use_validator); |
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
719 renderer_->set_expect_overlays(false); | 716 renderer_->set_expect_overlays(false); |
720 renderer_->FinishDrawingFrame(&frame3); | 717 renderer_->FinishDrawingFrame(&frame3); |
721 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); | 718 EXPECT_TRUE(resource_provider_->InUseByConsumer(resource1)); |
722 SwapBuffers(); | 719 SwapBuffers(); |
723 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); | 720 EXPECT_FALSE(resource_provider_->InUseByConsumer(resource1)); |
724 Mock::VerifyAndClearExpectations(&scheduler_); | 721 Mock::VerifyAndClearExpectations(&scheduler_); |
725 } | 722 } |
726 | 723 |
727 } // namespace | 724 } // namespace |
728 } // namespace cc | 725 } // namespace cc |
OLD | NEW |