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

Unified Diff: cc/output/overlay_unittest.cc

Issue 368403003: Use RenderPass to create DrawQuad in unittests (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@layerrawptrDQ
Patch Set: address review comments Created 6 years, 5 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
« no previous file with comments | « cc/layers/delegated_frame_provider_unittest.cc ('k') | cc/output/renderer_pixeltest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: cc/output/overlay_unittest.cc
diff --git a/cc/output/overlay_unittest.cc b/cc/output/overlay_unittest.cc
index 932ad7a2bcd14c326b7a3c7fba97d086cfd2fc7a..01e7cc2f350de1ed518b86ff12eb616372b6b359 100644
--- a/cc/output/overlay_unittest.cc
+++ b/cc/output/overlay_unittest.cc
@@ -129,15 +129,16 @@ ResourceProvider::ResourceId CreateResource(
mailbox, release_callback.Pass());
}
-scoped_ptr<TextureDrawQuad> CreateCandidateQuad(
- ResourceProvider* resource_provider,
- const SharedQuadState* shared_quad_state) {
+TextureDrawQuad* CreateCandidateQuad(ResourceProvider* resource_provider,
+ const SharedQuadState* shared_quad_state,
+ RenderPass* render_pass) {
ResourceProvider::ResourceId resource_id = CreateResource(resource_provider);
bool premultiplied_alpha = false;
bool flipped = false;
float vertex_opacity[4] = {1.0f, 1.0f, 1.0f, 1.0f};
- scoped_ptr<TextureDrawQuad> overlay_quad = TextureDrawQuad::Create();
+ TextureDrawQuad* overlay_quad =
+ render_pass->CreateAndAppendDrawQuad<TextureDrawQuad>();
overlay_quad->SetNew(shared_quad_state,
kOverlayRect,
kOverlayRect,
@@ -150,17 +151,16 @@ scoped_ptr<TextureDrawQuad> CreateCandidateQuad(
vertex_opacity,
flipped);
- return overlay_quad.Pass();
+ return overlay_quad;
}
-scoped_ptr<DrawQuad> CreateCheckeredQuad(
- ResourceProvider* resource_provider,
- const SharedQuadState* shared_quad_state) {
- scoped_ptr<CheckerboardDrawQuad> checkerboard_quad =
- CheckerboardDrawQuad::Create();
+void CreateCheckeredQuad(ResourceProvider* resource_provider,
+ const SharedQuadState* shared_quad_state,
+ RenderPass* render_pass) {
+ CheckerboardDrawQuad* checkerboard_quad =
+ render_pass->CreateAndAppendDrawQuad<CheckerboardDrawQuad>();
checkerboard_quad->SetNew(
shared_quad_state, kOverlayRect, kOverlayRect, SkColor());
- return checkerboard_quad.PassAs<DrawQuad>();
}
static void CompareRenderPassLists(const RenderPassList& expected_list,
@@ -249,16 +249,19 @@ class SingleOverlayOnTopTest : public testing::Test {
TEST_F(SingleOverlayOnTopTest, SuccessfullOverlay) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> original_quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ TextureDrawQuad* original_quad =
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ unsigned original_resource_id = original_quad->resource_id;
- pass->quad_list.push_back(
- original_quad->Copy(pass->shared_quad_state_list.back()));
// Add something behind it.
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
@@ -281,15 +284,17 @@ TEST_F(SingleOverlayOnTopTest, SuccessfullOverlay) {
}
// Check that the right resource id got extracted.
- EXPECT_EQ(original_quad->resource_id, candidate_list.back().resource_id);
+ EXPECT_EQ(original_resource_id, candidate_list.back().resource_id);
}
TEST_F(SingleOverlayOnTopTest, NoCandidates) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
@@ -306,15 +311,16 @@ TEST_F(SingleOverlayOnTopTest, NoCandidates) {
TEST_F(SingleOverlayOnTopTest, OccludedCandidates) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
- pass->quad_list.push_back(
- CreateCandidateQuad(resource_provider_.get(),
- pass->shared_quad_state_list.back())
- .PassAs<DrawQuad>());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
@@ -335,16 +341,17 @@ TEST_F(SingleOverlayOnTopTest, MultipleRenderPasses) {
pass_list.push_back(CreateRenderPass());
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> original_quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
- pass->quad_list.push_back(
- original_quad->Copy(pass->shared_quad_state_list.back()));
// Add something behind it.
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
pass_list.push_back(pass.Pass());
@@ -362,11 +369,12 @@ TEST_F(SingleOverlayOnTopTest, MultipleRenderPasses) {
TEST_F(SingleOverlayOnTopTest, RejectPremultipliedAlpha) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ TextureDrawQuad* quad =
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
quad->premultiplied_alpha = true;
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -377,11 +385,12 @@ TEST_F(SingleOverlayOnTopTest, RejectPremultipliedAlpha) {
TEST_F(SingleOverlayOnTopTest, RejectBlending) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ TextureDrawQuad* quad =
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
quad->needs_blending = true;
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -392,11 +401,12 @@ TEST_F(SingleOverlayOnTopTest, RejectBlending) {
TEST_F(SingleOverlayOnTopTest, RejectBackgroundColor) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ TextureDrawQuad* quad =
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
quad->background_color = SK_ColorBLACK;
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -407,11 +417,11 @@ TEST_F(SingleOverlayOnTopTest, RejectBackgroundColor) {
TEST_F(SingleOverlayOnTopTest, RejectBlendMode) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
pass->shared_quad_state_list.back()->blend_mode = SkXfermode::kScreen_Mode;
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -422,11 +432,11 @@ TEST_F(SingleOverlayOnTopTest, RejectBlendMode) {
TEST_F(SingleOverlayOnTopTest, RejectOpacity) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
pass->shared_quad_state_list.back()->opacity = 0.5f;
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -437,12 +447,12 @@ TEST_F(SingleOverlayOnTopTest, RejectOpacity) {
TEST_F(SingleOverlayOnTopTest, RejectTransform) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- scoped_ptr<TextureDrawQuad> quad = CreateCandidateQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
pass->shared_quad_state_list.back()->content_to_target_transform.Scale(2.f,
2.f);
- pass->quad_list.push_back(quad.PassAs<DrawQuad>());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
OverlayCandidateList candidate_list;
@@ -549,15 +559,16 @@ TEST_F(GLRendererWithOverlaysTest, OverlayQuadNotDrawn) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- pass->quad_list.push_back(
- CreateCandidateQuad(resource_provider_.get(),
- pass->shared_quad_state_list.back())
- .PassAs<DrawQuad>());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
@@ -587,15 +598,16 @@ TEST_F(GLRendererWithOverlaysTest, OccludedQuadDrawn) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
- pass->quad_list.push_back(
- CreateCandidateQuad(resource_provider_.get(),
- pass->shared_quad_state_list.back())
- .PassAs<DrawQuad>());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
@@ -619,15 +631,16 @@ TEST_F(GLRendererWithOverlaysTest, NoValidatorNoOverlay) {
scoped_ptr<RenderPass> pass = CreateRenderPass();
- pass->quad_list.push_back(
- CreateCandidateQuad(resource_provider_.get(),
- pass->shared_quad_state_list.back())
- .PassAs<DrawQuad>());
+ CreateCandidateQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
- pass->quad_list.push_back(CreateCheckeredQuad(
- resource_provider_.get(), pass->shared_quad_state_list.back()));
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
+ CreateCheckeredQuad(resource_provider_.get(),
+ pass->shared_quad_state_list.back(),
+ pass.get());
RenderPassList pass_list;
pass_list.push_back(pass.Pass());
« no previous file with comments | « cc/layers/delegated_frame_provider_unittest.cc ('k') | cc/output/renderer_pixeltest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698