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

Side by Side Diff: mojo/services/public/cpp/surfaces/tests/surface_unittest.cc

Issue 393583003: Support C++98 std::vector in mojo surfaces code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: return null frame when any bad quads are present 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 unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « mojo/services/public/cpp/surfaces/lib/surfaces_type_converters.cc ('k') | no next file » | 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/quads/render_pass.h" 5 #include "cc/quads/render_pass.h"
6 #include "cc/quads/solid_color_draw_quad.h" 6 #include "cc/quads/solid_color_draw_quad.h"
7 #include "cc/quads/surface_draw_quad.h" 7 #include "cc/quads/surface_draw_quad.h"
8 #include "cc/quads/texture_draw_quad.h" 8 #include "cc/quads/texture_draw_quad.h"
9 #include "gpu/command_buffer/common/mailbox.h" 9 #include "gpu/command_buffer/common/mailbox.h"
10 #include "gpu/command_buffer/common/mailbox_holder.h" 10 #include "gpu/command_buffer/common/mailbox_holder.h"
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after
136 EXPECT_EQ(PointF::From(uv_top_left), mojo_texture_state->uv_top_left); 136 EXPECT_EQ(PointF::From(uv_top_left), mojo_texture_state->uv_top_left);
137 EXPECT_EQ(PointF::From(uv_bottom_right), mojo_texture_state->uv_bottom_right); 137 EXPECT_EQ(PointF::From(uv_bottom_right), mojo_texture_state->uv_bottom_right);
138 EXPECT_EQ(surfaces::Color::From(background_color), 138 EXPECT_EQ(surfaces::Color::From(background_color),
139 mojo_texture_state->background_color); 139 mojo_texture_state->background_color);
140 for (size_t i = 0; i < 4; ++i) { 140 for (size_t i = 0; i < 4; ++i) {
141 EXPECT_EQ(vertex_opacity[i], mojo_texture_state->vertex_opacity[i]) << i; 141 EXPECT_EQ(vertex_opacity[i], mojo_texture_state->vertex_opacity[i]) << i;
142 } 142 }
143 EXPECT_EQ(flipped, mojo_texture_state->flipped); 143 EXPECT_EQ(flipped, mojo_texture_state->flipped);
144 } 144 }
145 145
146 TEST_F(SurfaceLibQuadTest, TextureQuadEmptyVertexOpacity) {
147 surfaces::QuadPtr mojo_texture_quad = surfaces::Quad::New();
148 mojo_texture_quad->material = surfaces::MATERIAL_TEXTURE_CONTENT;
149 surfaces::TextureQuadStatePtr mojo_texture_state =
150 surfaces::TextureQuadState::New();
151 mojo_texture_state->background_color = surfaces::Color::New();
152 mojo_texture_quad->texture_quad_state = mojo_texture_state.Pass();
153 surfaces::PassPtr mojo_pass = surfaces::Pass::New();
154 mojo_pass->quads.push_back(mojo_texture_quad.Pass());
155 surfaces::SharedQuadStatePtr mojo_sqs = surfaces::SharedQuadState::New();
156 mojo_pass->shared_quad_states.push_back(mojo_sqs.Pass());
157
158 scoped_ptr<cc::RenderPass> pass = ConvertTo(mojo_pass.Pass());
159 EXPECT_FALSE(pass);
160 }
161
162 TEST_F(SurfaceLibQuadTest, TextureQuadEmptyBackgroundColor) {
163 surfaces::QuadPtr mojo_texture_quad = surfaces::Quad::New();
164 mojo_texture_quad->material = surfaces::MATERIAL_TEXTURE_CONTENT;
165 surfaces::TextureQuadStatePtr mojo_texture_state =
166 surfaces::TextureQuadState::New();
167 mojo_texture_state->vertex_opacity = mojo::Array<float>::New(4);
168 mojo_texture_quad->texture_quad_state = mojo_texture_state.Pass();
169 surfaces::PassPtr mojo_pass = surfaces::Pass::New();
170 mojo_pass->quads.push_back(mojo_texture_quad.Pass());
171 surfaces::SharedQuadStatePtr mojo_sqs = surfaces::SharedQuadState::New();
172 mojo_pass->shared_quad_states.push_back(mojo_sqs.Pass());
173
174 scoped_ptr<cc::RenderPass> pass = ConvertTo(mojo_pass.Pass());
175 EXPECT_FALSE(pass);
176 }
177
146 TEST(SurfaceLibTest, SharedQuadState) { 178 TEST(SurfaceLibTest, SharedQuadState) {
147 gfx::Transform content_to_target_transform; 179 gfx::Transform content_to_target_transform;
148 content_to_target_transform.Scale3d(0.3f, 0.7f, 0.9f); 180 content_to_target_transform.Scale3d(0.3f, 0.7f, 0.9f);
149 gfx::Size content_bounds(57, 39); 181 gfx::Size content_bounds(57, 39);
150 gfx::Rect visible_content_rect(3, 7, 28, 42); 182 gfx::Rect visible_content_rect(3, 7, 28, 42);
151 gfx::Rect clip_rect(9, 12, 21, 31); 183 gfx::Rect clip_rect(9, 12, 21, 31);
152 bool is_clipped = true; 184 bool is_clipped = true;
153 float opacity = 0.65f; 185 float opacity = 0.65f;
154 int sorting_context_id = 13; 186 int sorting_context_id = 13;
155 SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode; 187 SkXfermode::Mode blend_mode = SkXfermode::kSrcOver_Mode;
(...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after
325 << i; 357 << i;
326 } 358 }
327 EXPECT_EQ(flipped, round_trip_texture_quad->flipped); 359 EXPECT_EQ(flipped, round_trip_texture_quad->flipped);
328 } 360 }
329 361
330 TEST(SurfaceLibTest, Mailbox) { 362 TEST(SurfaceLibTest, Mailbox) {
331 gpu::Mailbox mailbox; 363 gpu::Mailbox mailbox;
332 mailbox.Generate(); 364 mailbox.Generate();
333 365
334 surfaces::MailboxPtr mojo_mailbox = surfaces::Mailbox::From(mailbox); 366 surfaces::MailboxPtr mojo_mailbox = surfaces::Mailbox::From(mailbox);
335 EXPECT_EQ(0, memcmp(mailbox.name, mojo_mailbox->name.storage().data(), 64)); 367 EXPECT_EQ(0, memcmp(mailbox.name, &mojo_mailbox->name.storage()[0], 64));
336 368
337 gpu::Mailbox round_trip_mailbox = mojo_mailbox.To<gpu::Mailbox>(); 369 gpu::Mailbox round_trip_mailbox = mojo_mailbox.To<gpu::Mailbox>();
338 EXPECT_EQ(mailbox, round_trip_mailbox); 370 EXPECT_EQ(mailbox, round_trip_mailbox);
339 } 371 }
340 372
373 TEST(SurfaceLibTest, MailboxEmptyName) {
374 surfaces::MailboxPtr mojo_mailbox = surfaces::Mailbox::New();
375
376 gpu::Mailbox converted_mailbox = mojo_mailbox.To<gpu::Mailbox>();
377 EXPECT_TRUE(converted_mailbox.IsZero());
378 }
379
341 TEST(SurfaceLibTest, MailboxHolder) { 380 TEST(SurfaceLibTest, MailboxHolder) {
342 gpu::Mailbox mailbox; 381 gpu::Mailbox mailbox;
343 mailbox.Generate(); 382 mailbox.Generate();
344 uint32_t texture_target = GL_TEXTURE_2D; 383 uint32_t texture_target = GL_TEXTURE_2D;
345 uint32_t sync_point = 7u; 384 uint32_t sync_point = 7u;
346 gpu::MailboxHolder holder(mailbox, texture_target, sync_point); 385 gpu::MailboxHolder holder(mailbox, texture_target, sync_point);
347 386
348 surfaces::MailboxHolderPtr mojo_holder = 387 surfaces::MailboxHolderPtr mojo_holder =
349 surfaces::MailboxHolder::From(holder); 388 surfaces::MailboxHolder::From(holder);
350 EXPECT_EQ(texture_target, mojo_holder->texture_target); 389 EXPECT_EQ(texture_target, mojo_holder->texture_target);
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
420 cc::ReturnedResource round_trip_resource = 459 cc::ReturnedResource round_trip_resource =
421 mojo_resource.To<cc::ReturnedResource>(); 460 mojo_resource.To<cc::ReturnedResource>();
422 EXPECT_EQ(id, round_trip_resource.id); 461 EXPECT_EQ(id, round_trip_resource.id);
423 EXPECT_EQ(sync_point, round_trip_resource.sync_point); 462 EXPECT_EQ(sync_point, round_trip_resource.sync_point);
424 EXPECT_EQ(count, round_trip_resource.count); 463 EXPECT_EQ(count, round_trip_resource.count);
425 EXPECT_EQ(lost, round_trip_resource.lost); 464 EXPECT_EQ(lost, round_trip_resource.lost);
426 } 465 }
427 466
428 } // namespace 467 } // namespace
429 } // namespace mojo 468 } // namespace mojo
OLDNEW
« no previous file with comments | « mojo/services/public/cpp/surfaces/lib/surfaces_type_converters.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698