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

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

Issue 628443002: replace OVERRIDE and FINAL with override and final in cc/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase on master Created 6 years, 2 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/gl_renderer.cc ('k') | cc/output/output_surface_unittest.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 2012 The Chromium Authors. All rights reserved. 1 // Copyright 2012 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/output/gl_renderer.h" 5 #include "cc/output/gl_renderer.h"
6 6
7 #include <set> 7 #include <set>
8 8
9 #include "cc/base/math_util.h" 9 #include "cc/base/math_util.h"
10 #include "cc/output/compositor_frame_metadata.h" 10 #include "cc/output/compositor_frame_metadata.h"
(...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after
356 EXPECT_TRUE(renderer_->stencil_enabled()); 356 EXPECT_TRUE(renderer_->stencil_enabled());
357 } 357 }
358 358
359 class ForbidSynchronousCallContext : public TestWebGraphicsContext3D { 359 class ForbidSynchronousCallContext : public TestWebGraphicsContext3D {
360 public: 360 public:
361 ForbidSynchronousCallContext() {} 361 ForbidSynchronousCallContext() {}
362 362
363 virtual void getAttachedShaders(GLuint program, 363 virtual void getAttachedShaders(GLuint program,
364 GLsizei max_count, 364 GLsizei max_count,
365 GLsizei* count, 365 GLsizei* count,
366 GLuint* shaders) OVERRIDE { 366 GLuint* shaders) override {
367 ADD_FAILURE(); 367 ADD_FAILURE();
368 } 368 }
369 virtual GLint getAttribLocation(GLuint program, const GLchar* name) OVERRIDE { 369 virtual GLint getAttribLocation(GLuint program, const GLchar* name) override {
370 ADD_FAILURE(); 370 ADD_FAILURE();
371 return 0; 371 return 0;
372 } 372 }
373 virtual void getBooleanv(GLenum pname, GLboolean* value) OVERRIDE { 373 virtual void getBooleanv(GLenum pname, GLboolean* value) override {
374 ADD_FAILURE(); 374 ADD_FAILURE();
375 } 375 }
376 virtual void getBufferParameteriv(GLenum target, 376 virtual void getBufferParameteriv(GLenum target,
377 GLenum pname, 377 GLenum pname,
378 GLint* value) OVERRIDE { 378 GLint* value) override {
379 ADD_FAILURE(); 379 ADD_FAILURE();
380 } 380 }
381 virtual GLenum getError() OVERRIDE { 381 virtual GLenum getError() override {
382 ADD_FAILURE(); 382 ADD_FAILURE();
383 return GL_NO_ERROR; 383 return GL_NO_ERROR;
384 } 384 }
385 virtual void getFloatv(GLenum pname, GLfloat* value) OVERRIDE { 385 virtual void getFloatv(GLenum pname, GLfloat* value) override {
386 ADD_FAILURE(); 386 ADD_FAILURE();
387 } 387 }
388 virtual void getFramebufferAttachmentParameteriv(GLenum target, 388 virtual void getFramebufferAttachmentParameteriv(GLenum target,
389 GLenum attachment, 389 GLenum attachment,
390 GLenum pname, 390 GLenum pname,
391 GLint* value) OVERRIDE { 391 GLint* value) override {
392 ADD_FAILURE(); 392 ADD_FAILURE();
393 } 393 }
394 virtual void getIntegerv(GLenum pname, GLint* value) OVERRIDE { 394 virtual void getIntegerv(GLenum pname, GLint* value) override {
395 if (pname == GL_MAX_TEXTURE_SIZE) { 395 if (pname == GL_MAX_TEXTURE_SIZE) {
396 // MAX_TEXTURE_SIZE is cached client side, so it's OK to query. 396 // MAX_TEXTURE_SIZE is cached client side, so it's OK to query.
397 *value = 1024; 397 *value = 1024;
398 } else { 398 } else {
399 ADD_FAILURE(); 399 ADD_FAILURE();
400 } 400 }
401 } 401 }
402 402
403 // We allow querying the shader compilation and program link status in debug 403 // We allow querying the shader compilation and program link status in debug
404 // mode, but not release. 404 // mode, but not release.
405 virtual void getProgramiv(GLuint program, 405 virtual void getProgramiv(GLuint program,
406 GLenum pname, 406 GLenum pname,
407 GLint* value) OVERRIDE { 407 GLint* value) override {
408 #ifndef NDEBUG 408 #ifndef NDEBUG
409 *value = 1; 409 *value = 1;
410 #else 410 #else
411 ADD_FAILURE(); 411 ADD_FAILURE();
412 #endif 412 #endif
413 } 413 }
414 414
415 virtual void getShaderiv(GLuint shader, GLenum pname, GLint* value) OVERRIDE { 415 virtual void getShaderiv(GLuint shader, GLenum pname, GLint* value) override {
416 #ifndef NDEBUG 416 #ifndef NDEBUG
417 *value = 1; 417 *value = 1;
418 #else 418 #else
419 ADD_FAILURE(); 419 ADD_FAILURE();
420 #endif 420 #endif
421 } 421 }
422 422
423 virtual void getRenderbufferParameteriv(GLenum target, 423 virtual void getRenderbufferParameteriv(GLenum target,
424 GLenum pname, 424 GLenum pname,
425 GLint* value) OVERRIDE { 425 GLint* value) override {
426 ADD_FAILURE(); 426 ADD_FAILURE();
427 } 427 }
428 428
429 virtual void getShaderPrecisionFormat(GLenum shadertype, 429 virtual void getShaderPrecisionFormat(GLenum shadertype,
430 GLenum precisiontype, 430 GLenum precisiontype,
431 GLint* range, 431 GLint* range,
432 GLint* precision) OVERRIDE { 432 GLint* precision) override {
433 ADD_FAILURE(); 433 ADD_FAILURE();
434 } 434 }
435 virtual void getTexParameterfv(GLenum target, 435 virtual void getTexParameterfv(GLenum target,
436 GLenum pname, 436 GLenum pname,
437 GLfloat* value) OVERRIDE { 437 GLfloat* value) override {
438 ADD_FAILURE(); 438 ADD_FAILURE();
439 } 439 }
440 virtual void getTexParameteriv(GLenum target, 440 virtual void getTexParameteriv(GLenum target,
441 GLenum pname, 441 GLenum pname,
442 GLint* value) OVERRIDE { 442 GLint* value) override {
443 ADD_FAILURE(); 443 ADD_FAILURE();
444 } 444 }
445 virtual void getUniformfv(GLuint program, 445 virtual void getUniformfv(GLuint program,
446 GLint location, 446 GLint location,
447 GLfloat* value) OVERRIDE { 447 GLfloat* value) override {
448 ADD_FAILURE(); 448 ADD_FAILURE();
449 } 449 }
450 virtual void getUniformiv(GLuint program, 450 virtual void getUniformiv(GLuint program,
451 GLint location, 451 GLint location,
452 GLint* value) OVERRIDE { 452 GLint* value) override {
453 ADD_FAILURE(); 453 ADD_FAILURE();
454 } 454 }
455 virtual GLint getUniformLocation(GLuint program, 455 virtual GLint getUniformLocation(GLuint program,
456 const GLchar* name) OVERRIDE { 456 const GLchar* name) override {
457 ADD_FAILURE(); 457 ADD_FAILURE();
458 return 0; 458 return 0;
459 } 459 }
460 virtual void getVertexAttribfv(GLuint index, 460 virtual void getVertexAttribfv(GLuint index,
461 GLenum pname, 461 GLenum pname,
462 GLfloat* value) OVERRIDE { 462 GLfloat* value) override {
463 ADD_FAILURE(); 463 ADD_FAILURE();
464 } 464 }
465 virtual void getVertexAttribiv(GLuint index, 465 virtual void getVertexAttribiv(GLuint index,
466 GLenum pname, 466 GLenum pname,
467 GLint* value) OVERRIDE { 467 GLint* value) override {
468 ADD_FAILURE(); 468 ADD_FAILURE();
469 } 469 }
470 virtual GLsizeiptr getVertexAttribOffset(GLuint index, 470 virtual GLsizeiptr getVertexAttribOffset(GLuint index,
471 GLenum pname) OVERRIDE { 471 GLenum pname) override {
472 ADD_FAILURE(); 472 ADD_FAILURE();
473 return 0; 473 return 0;
474 } 474 }
475 }; 475 };
476 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) { 476 TEST_F(GLRendererTest, InitializationDoesNotMakeSynchronousCalls) {
477 FakeOutputSurfaceClient output_surface_client; 477 FakeOutputSurfaceClient output_surface_client;
478 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( 478 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d(
479 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext))); 479 scoped_ptr<TestWebGraphicsContext3D>(new ForbidSynchronousCallContext)));
480 CHECK(output_surface->BindToClient(&output_surface_client)); 480 CHECK(output_surface->BindToClient(&output_surface_client));
481 481
(...skipping 15 matching lines...) Expand all
497 output_surface.get(), 497 output_surface.get(),
498 resource_provider.get()); 498 resource_provider.get());
499 } 499 }
500 500
501 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D { 501 class LoseContextOnFirstGetContext : public TestWebGraphicsContext3D {
502 public: 502 public:
503 LoseContextOnFirstGetContext() {} 503 LoseContextOnFirstGetContext() {}
504 504
505 virtual void getProgramiv(GLuint program, 505 virtual void getProgramiv(GLuint program,
506 GLenum pname, 506 GLenum pname,
507 GLint* value) OVERRIDE { 507 GLint* value) override {
508 context_lost_ = true; 508 context_lost_ = true;
509 *value = 0; 509 *value = 0;
510 } 510 }
511 511
512 virtual void getShaderiv(GLuint shader, GLenum pname, GLint* value) OVERRIDE { 512 virtual void getShaderiv(GLuint shader, GLenum pname, GLint* value) override {
513 context_lost_ = true; 513 context_lost_ = true;
514 *value = 0; 514 *value = 0;
515 } 515 }
516 }; 516 };
517 517
518 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) { 518 TEST_F(GLRendererTest, InitializationWithQuicklyLostContextDoesNotAssert) {
519 FakeOutputSurfaceClient output_surface_client; 519 FakeOutputSurfaceClient output_surface_client;
520 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d( 520 scoped_ptr<OutputSurface> output_surface(FakeOutputSurface::Create3d(
521 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext))); 521 scoped_ptr<TestWebGraphicsContext3D>(new LoseContextOnFirstGetContext)));
522 CHECK(output_surface->BindToClient(&output_surface_client)); 522 CHECK(output_surface->BindToClient(&output_surface_client));
(...skipping 170 matching lines...) Expand 10 before | Expand all | Expand 10 after
693 Mock::VerifyAndClearExpectations(context); 693 Mock::VerifyAndClearExpectations(context);
694 } 694 }
695 695
696 class VisibilityChangeIsLastCallTrackingContext 696 class VisibilityChangeIsLastCallTrackingContext
697 : public TestWebGraphicsContext3D { 697 : public TestWebGraphicsContext3D {
698 public: 698 public:
699 VisibilityChangeIsLastCallTrackingContext() 699 VisibilityChangeIsLastCallTrackingContext()
700 : last_call_was_set_visibility_(false) {} 700 : last_call_was_set_visibility_(false) {}
701 701
702 // TestWebGraphicsContext3D methods. 702 // TestWebGraphicsContext3D methods.
703 virtual void flush() OVERRIDE { last_call_was_set_visibility_ = false; } 703 virtual void flush() override { last_call_was_set_visibility_ = false; }
704 virtual void deleteTexture(GLuint) OVERRIDE { 704 virtual void deleteTexture(GLuint) override {
705 last_call_was_set_visibility_ = false; 705 last_call_was_set_visibility_ = false;
706 } 706 }
707 virtual void deleteFramebuffer(GLuint) OVERRIDE { 707 virtual void deleteFramebuffer(GLuint) override {
708 last_call_was_set_visibility_ = false; 708 last_call_was_set_visibility_ = false;
709 } 709 }
710 virtual void deleteQueryEXT(GLuint) OVERRIDE { 710 virtual void deleteQueryEXT(GLuint) override {
711 last_call_was_set_visibility_ = false; 711 last_call_was_set_visibility_ = false;
712 } 712 }
713 virtual void deleteRenderbuffer(GLuint) OVERRIDE { 713 virtual void deleteRenderbuffer(GLuint) override {
714 last_call_was_set_visibility_ = false; 714 last_call_was_set_visibility_ = false;
715 } 715 }
716 716
717 // Methods added for test. 717 // Methods added for test.
718 void set_last_call_was_visibility(bool visible) { 718 void set_last_call_was_visibility(bool visible) {
719 DCHECK(last_call_was_set_visibility_ == false); 719 DCHECK(last_call_was_set_visibility_ == false);
720 last_call_was_set_visibility_ = true; 720 last_call_was_set_visibility_ = true;
721 } 721 }
722 bool last_call_was_set_visibility() const { 722 bool last_call_was_set_visibility() const {
723 return last_call_was_set_visibility_; 723 return last_call_was_set_visibility_;
(...skipping 248 matching lines...) Expand 10 before | Expand all | Expand 10 after
972 972
973 // In multiple render passes all but the root pass should clear the 973 // In multiple render passes all but the root pass should clear the
974 // framebuffer. 974 // framebuffer.
975 Mock::VerifyAndClearExpectations(&mock_context); 975 Mock::VerifyAndClearExpectations(&mock_context);
976 } 976 }
977 977
978 class ScissorTestOnClearCheckingContext : public TestWebGraphicsContext3D { 978 class ScissorTestOnClearCheckingContext : public TestWebGraphicsContext3D {
979 public: 979 public:
980 ScissorTestOnClearCheckingContext() : scissor_enabled_(false) {} 980 ScissorTestOnClearCheckingContext() : scissor_enabled_(false) {}
981 981
982 virtual void clear(GLbitfield) OVERRIDE { EXPECT_FALSE(scissor_enabled_); } 982 virtual void clear(GLbitfield) override { EXPECT_FALSE(scissor_enabled_); }
983 983
984 virtual void enable(GLenum cap) OVERRIDE { 984 virtual void enable(GLenum cap) override {
985 if (cap == GL_SCISSOR_TEST) 985 if (cap == GL_SCISSOR_TEST)
986 scissor_enabled_ = true; 986 scissor_enabled_ = true;
987 } 987 }
988 988
989 virtual void disable(GLenum cap) OVERRIDE { 989 virtual void disable(GLenum cap) override {
990 if (cap == GL_SCISSOR_TEST) 990 if (cap == GL_SCISSOR_TEST)
991 scissor_enabled_ = false; 991 scissor_enabled_ = false;
992 } 992 }
993 993
994 private: 994 private:
995 bool scissor_enabled_; 995 bool scissor_enabled_;
996 }; 996 };
997 997
998 TEST_F(GLRendererTest, ScissorTestWhenClearing) { 998 TEST_F(GLRendererTest, ScissorTestWhenClearing) {
999 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned( 999 scoped_ptr<ScissorTestOnClearCheckingContext> context_owned(
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
1062 1062
1063 class DiscardCheckingContext : public TestWebGraphicsContext3D { 1063 class DiscardCheckingContext : public TestWebGraphicsContext3D {
1064 public: 1064 public:
1065 DiscardCheckingContext() : discarded_(0) { 1065 DiscardCheckingContext() : discarded_(0) {
1066 set_have_post_sub_buffer(true); 1066 set_have_post_sub_buffer(true);
1067 set_have_discard_framebuffer(true); 1067 set_have_discard_framebuffer(true);
1068 } 1068 }
1069 1069
1070 virtual void discardFramebufferEXT(GLenum target, 1070 virtual void discardFramebufferEXT(GLenum target,
1071 GLsizei numAttachments, 1071 GLsizei numAttachments,
1072 const GLenum* attachments) OVERRIDE { 1072 const GLenum* attachments) override {
1073 ++discarded_; 1073 ++discarded_;
1074 } 1074 }
1075 1075
1076 int discarded() const { return discarded_; } 1076 int discarded() const { return discarded_; }
1077 void reset() { discarded_ = 0; } 1077 void reset() { discarded_ = 0; }
1078 1078
1079 private: 1079 private:
1080 int discarded_; 1080 int discarded_;
1081 }; 1081 };
1082 1082
1083 class NonReshapableOutputSurface : public FakeOutputSurface { 1083 class NonReshapableOutputSurface : public FakeOutputSurface {
1084 public: 1084 public:
1085 explicit NonReshapableOutputSurface( 1085 explicit NonReshapableOutputSurface(
1086 scoped_ptr<TestWebGraphicsContext3D> context3d) 1086 scoped_ptr<TestWebGraphicsContext3D> context3d)
1087 : FakeOutputSurface(TestContextProvider::Create(context3d.Pass()), 1087 : FakeOutputSurface(TestContextProvider::Create(context3d.Pass()),
1088 false) { 1088 false) {
1089 surface_size_ = gfx::Size(500, 500); 1089 surface_size_ = gfx::Size(500, 500);
1090 } 1090 }
1091 virtual void Reshape(const gfx::Size& size, float scale_factor) OVERRIDE {} 1091 virtual void Reshape(const gfx::Size& size, float scale_factor) override {}
1092 void set_fixed_size(const gfx::Size& size) { surface_size_ = size; } 1092 void set_fixed_size(const gfx::Size& size) { surface_size_ = size; }
1093 }; 1093 };
1094 1094
1095 TEST_F(GLRendererTest, NoDiscardOnPartialUpdates) { 1095 TEST_F(GLRendererTest, NoDiscardOnPartialUpdates) {
1096 scoped_ptr<DiscardCheckingContext> context_owned(new DiscardCheckingContext); 1096 scoped_ptr<DiscardCheckingContext> context_owned(new DiscardCheckingContext);
1097 DiscardCheckingContext* context = context_owned.get(); 1097 DiscardCheckingContext* context = context_owned.get();
1098 1098
1099 FakeOutputSurfaceClient output_surface_client; 1099 FakeOutputSurfaceClient output_surface_client;
1100 scoped_ptr<NonReshapableOutputSurface> output_surface( 1100 scoped_ptr<NonReshapableOutputSurface> output_surface(
1101 new NonReshapableOutputSurface(context_owned.Pass())); 1101 new NonReshapableOutputSurface(context_owned.Pass()));
(...skipping 149 matching lines...) Expand 10 before | Expand all | Expand 10 after
1251 class FlippedScissorAndViewportContext : public TestWebGraphicsContext3D { 1251 class FlippedScissorAndViewportContext : public TestWebGraphicsContext3D {
1252 public: 1252 public:
1253 FlippedScissorAndViewportContext() 1253 FlippedScissorAndViewportContext()
1254 : did_call_viewport_(false), did_call_scissor_(false) {} 1254 : did_call_viewport_(false), did_call_scissor_(false) {}
1255 virtual ~FlippedScissorAndViewportContext() { 1255 virtual ~FlippedScissorAndViewportContext() {
1256 EXPECT_TRUE(did_call_viewport_); 1256 EXPECT_TRUE(did_call_viewport_);
1257 EXPECT_TRUE(did_call_scissor_); 1257 EXPECT_TRUE(did_call_scissor_);
1258 } 1258 }
1259 1259
1260 virtual void viewport(GLint x, GLint y, GLsizei width, GLsizei height) 1260 virtual void viewport(GLint x, GLint y, GLsizei width, GLsizei height)
1261 OVERRIDE { 1261 override {
1262 EXPECT_EQ(10, x); 1262 EXPECT_EQ(10, x);
1263 EXPECT_EQ(390, y); 1263 EXPECT_EQ(390, y);
1264 EXPECT_EQ(100, width); 1264 EXPECT_EQ(100, width);
1265 EXPECT_EQ(100, height); 1265 EXPECT_EQ(100, height);
1266 did_call_viewport_ = true; 1266 did_call_viewport_ = true;
1267 } 1267 }
1268 1268
1269 virtual void scissor(GLint x, GLint y, GLsizei width, GLsizei height) 1269 virtual void scissor(GLint x, GLint y, GLsizei width, GLsizei height)
1270 OVERRIDE { 1270 override {
1271 EXPECT_EQ(30, x); 1271 EXPECT_EQ(30, x);
1272 EXPECT_EQ(450, y); 1272 EXPECT_EQ(450, y);
1273 EXPECT_EQ(20, width); 1273 EXPECT_EQ(20, width);
1274 EXPECT_EQ(20, height); 1274 EXPECT_EQ(20, height);
1275 did_call_scissor_ = true; 1275 did_call_scissor_ = true;
1276 } 1276 }
1277 1277
1278 private: 1278 private:
1279 bool did_call_viewport_; 1279 bool did_call_viewport_;
1280 bool did_call_scissor_; 1280 bool did_call_scissor_;
(...skipping 555 matching lines...) Expand 10 before | Expand all | Expand 10 after
1836 base::MessageLoop::current()->Run(); 1836 base::MessageLoop::current()->Run();
1837 1837
1838 // The sync point should have happened. 1838 // The sync point should have happened.
1839 EXPECT_EQ(1, sync_point_callback_count); 1839 EXPECT_EQ(1, sync_point_callback_count);
1840 EXPECT_EQ(1, other_callback_count); 1840 EXPECT_EQ(1, other_callback_count);
1841 } 1841 }
1842 #endif // OS_ANDROID 1842 #endif // OS_ANDROID
1843 1843
1844 } // namespace 1844 } // namespace
1845 } // namespace cc 1845 } // namespace cc
OLDNEW
« no previous file with comments | « cc/output/gl_renderer.cc ('k') | cc/output/output_surface_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698