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

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h

Issue 2445323006: command buffer: remove "unsafe" from autogenerated ES3 apis; cleanly separate ES3 tests (Closed)
Patch Set: address comment Created 4 years, 1 month 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
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 // This file is auto-generated from 5 // This file is auto-generated from
6 // gpu/command_buffer/build_gles2_cmd_buffer.py 6 // gpu/command_buffer/build_gles2_cmd_buffer.py
7 // It's formatted by clang-format using chromium coding style: 7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename 8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT! 9 // DO NOT EDIT!
10 10
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 static_cast<cmds::GetRenderbufferParameteriv::Result*>( 91 static_cast<cmds::GetRenderbufferParameteriv::Result*>(
92 shared_memory_address_); 92 shared_memory_address_);
93 result->size = 0; 93 result->size = 0;
94 cmds::GetRenderbufferParameteriv cmd; 94 cmds::GetRenderbufferParameteriv cmd;
95 cmd.Init(GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, shared_memory_id_, 95 cmd.Init(GL_RENDERBUFFER, GL_RENDERBUFFER_RED_SIZE, shared_memory_id_,
96 kInvalidSharedMemoryOffset); 96 kInvalidSharedMemoryOffset);
97 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 97 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
98 EXPECT_EQ(0u, result->size); 98 EXPECT_EQ(0u, result->size);
99 } 99 }
100 100
101 TEST_P(GLES2DecoderTest2, GetSamplerParameterfvValidArgs) { 101 TEST_P(GLES3DecoderTest2, GetSamplerParameterfvValidArgs) {
102 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR)); 102 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR));
103 SpecializedSetup<cmds::GetSamplerParameterfv, 0>(true); 103 SpecializedSetup<cmds::GetSamplerParameterfv, 0>(true);
104 typedef cmds::GetSamplerParameterfv::Result Result; 104 typedef cmds::GetSamplerParameterfv::Result Result;
105 Result* result = static_cast<Result*>(shared_memory_address_); 105 Result* result = static_cast<Result*>(shared_memory_address_);
106 EXPECT_CALL(*gl_, 106 EXPECT_CALL(*gl_,
107 GetSamplerParameterfv(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 107 GetSamplerParameterfv(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
108 result->GetData())); 108 result->GetData()));
109 result->size = 0; 109 result->size = 0;
110 cmds::GetSamplerParameterfv cmd; 110 cmds::GetSamplerParameterfv cmd;
111 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, shared_memory_id_, 111 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, shared_memory_id_,
112 shared_memory_offset_); 112 shared_memory_offset_);
113 decoder_->set_unsafe_es3_apis_enabled(true);
114 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 113 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
115 EXPECT_EQ( 114 EXPECT_EQ(
116 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), 115 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER),
117 result->GetNumResults()); 116 result->GetNumResults());
118 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 117 EXPECT_EQ(GL_NO_ERROR, GetGLError());
119 decoder_->set_unsafe_es3_apis_enabled(false);
120 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
121 } 118 }
122 119
123 TEST_P(GLES2DecoderTest2, GetSamplerParameterivValidArgs) { 120 TEST_P(GLES3DecoderTest2, GetSamplerParameterivValidArgs) {
124 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR)); 121 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR));
125 SpecializedSetup<cmds::GetSamplerParameteriv, 0>(true); 122 SpecializedSetup<cmds::GetSamplerParameteriv, 0>(true);
126 typedef cmds::GetSamplerParameteriv::Result Result; 123 typedef cmds::GetSamplerParameteriv::Result Result;
127 Result* result = static_cast<Result*>(shared_memory_address_); 124 Result* result = static_cast<Result*>(shared_memory_address_);
128 EXPECT_CALL(*gl_, 125 EXPECT_CALL(*gl_,
129 GetSamplerParameteriv(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 126 GetSamplerParameteriv(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
130 result->GetData())); 127 result->GetData()));
131 result->size = 0; 128 result->size = 0;
132 cmds::GetSamplerParameteriv cmd; 129 cmds::GetSamplerParameteriv cmd;
133 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, shared_memory_id_, 130 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, shared_memory_id_,
134 shared_memory_offset_); 131 shared_memory_offset_);
135 decoder_->set_unsafe_es3_apis_enabled(true);
136 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 132 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
137 EXPECT_EQ( 133 EXPECT_EQ(
138 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER), 134 decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_TEXTURE_MAG_FILTER),
139 result->GetNumResults()); 135 result->GetNumResults());
140 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 136 EXPECT_EQ(GL_NO_ERROR, GetGLError());
141 decoder_->set_unsafe_es3_apis_enabled(false);
142 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
143 } 137 }
144 138
145 TEST_P(GLES2DecoderTest2, GetShaderivValidArgs) { 139 TEST_P(GLES2DecoderTest2, GetShaderivValidArgs) {
146 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR)); 140 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR));
147 SpecializedSetup<cmds::GetShaderiv, 0>(true); 141 SpecializedSetup<cmds::GetShaderiv, 0>(true);
148 typedef cmds::GetShaderiv::Result Result; 142 typedef cmds::GetShaderiv::Result Result;
149 Result* result = static_cast<Result*>(shared_memory_address_); 143 Result* result = static_cast<Result*>(shared_memory_address_);
150 EXPECT_CALL(*gl_, 144 EXPECT_CALL(*gl_,
151 GetShaderiv(kServiceShaderId, GL_SHADER_TYPE, result->GetData())); 145 GetShaderiv(kServiceShaderId, GL_SHADER_TYPE, result->GetData()));
152 result->size = 0; 146 result->size = 0;
(...skipping 24 matching lines...) Expand all
177 cmds::GetShaderiv::Result* result = 171 cmds::GetShaderiv::Result* result =
178 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_); 172 static_cast<cmds::GetShaderiv::Result*>(shared_memory_address_);
179 result->size = 0; 173 result->size = 0;
180 cmds::GetShaderiv cmd; 174 cmds::GetShaderiv cmd;
181 cmd.Init(client_shader_id_, GL_SHADER_TYPE, shared_memory_id_, 175 cmd.Init(client_shader_id_, GL_SHADER_TYPE, shared_memory_id_,
182 kInvalidSharedMemoryOffset); 176 kInvalidSharedMemoryOffset);
183 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 177 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
184 EXPECT_EQ(0u, result->size); 178 EXPECT_EQ(0u, result->size);
185 } 179 }
186 180
187 TEST_P(GLES2DecoderTest2, GetSyncivValidArgs) { 181 TEST_P(GLES3DecoderTest2, GetSyncivValidArgs) {
188 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR)); 182 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR));
189 SpecializedSetup<cmds::GetSynciv, 0>(true); 183 SpecializedSetup<cmds::GetSynciv, 0>(true);
190 typedef cmds::GetSynciv::Result Result; 184 typedef cmds::GetSynciv::Result Result;
191 Result* result = static_cast<Result*>(shared_memory_address_); 185 Result* result = static_cast<Result*>(shared_memory_address_);
192 EXPECT_CALL( 186 EXPECT_CALL(
193 *gl_, GetSynciv(reinterpret_cast<GLsync>(kServiceSyncId), GL_SYNC_STATUS, 187 *gl_, GetSynciv(reinterpret_cast<GLsync>(kServiceSyncId), GL_SYNC_STATUS,
194 decoder_->GetGLES2Util()->GLGetNumValuesReturned( 188 decoder_->GetGLES2Util()->GLGetNumValuesReturned(
195 GL_SYNC_STATUS), 189 GL_SYNC_STATUS),
196 nullptr, result->GetData())); 190 nullptr, result->GetData()));
197 result->size = 0; 191 result->size = 0;
198 cmds::GetSynciv cmd; 192 cmds::GetSynciv cmd;
199 cmd.Init(client_sync_id_, GL_SYNC_STATUS, shared_memory_id_, 193 cmd.Init(client_sync_id_, GL_SYNC_STATUS, shared_memory_id_,
200 shared_memory_offset_); 194 shared_memory_offset_);
201 decoder_->set_unsafe_es3_apis_enabled(true);
202 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 195 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
203 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_SYNC_STATUS), 196 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(GL_SYNC_STATUS),
204 result->GetNumResults()); 197 result->GetNumResults());
205 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 198 EXPECT_EQ(GL_NO_ERROR, GetGLError());
206 decoder_->set_unsafe_es3_apis_enabled(false);
207 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
208 } 199 }
209 200
210 TEST_P(GLES2DecoderTest2, GetTexParameterfvValidArgs) { 201 TEST_P(GLES2DecoderTest2, GetTexParameterfvValidArgs) {
211 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR)); 202 EXPECT_CALL(*gl_, GetError()).WillRepeatedly(Return(GL_NO_ERROR));
212 SpecializedSetup<cmds::GetTexParameterfv, 0>(true); 203 SpecializedSetup<cmds::GetTexParameterfv, 0>(true);
213 typedef cmds::GetTexParameterfv::Result Result; 204 typedef cmds::GetTexParameterfv::Result Result;
214 Result* result = static_cast<Result*>(shared_memory_address_); 205 Result* result = static_cast<Result*>(shared_memory_address_);
215 EXPECT_CALL(*gl_, GetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, 206 EXPECT_CALL(*gl_, GetTexParameterfv(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER,
216 result->GetData())); 207 result->GetData()));
217 result->size = 0; 208 result->size = 0;
(...skipping 204 matching lines...) Expand 10 before | Expand all | Expand 10 after
422 cmds::GetVertexAttribiv::Result* result = 413 cmds::GetVertexAttribiv::Result* result =
423 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_); 414 static_cast<cmds::GetVertexAttribiv::Result*>(shared_memory_address_);
424 result->size = 0; 415 result->size = 0;
425 cmds::GetVertexAttribiv cmd; 416 cmds::GetVertexAttribiv cmd;
426 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_, 417 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_,
427 kInvalidSharedMemoryOffset); 418 kInvalidSharedMemoryOffset);
428 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 419 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
429 EXPECT_EQ(0u, result->size); 420 EXPECT_EQ(0u, result->size);
430 } 421 }
431 422
432 TEST_P(GLES2DecoderTest2, GetVertexAttribIivValidArgs) { 423 TEST_P(GLES3DecoderTest2, GetVertexAttribIivValidArgs) {
433 SpecializedSetup<cmds::GetVertexAttribIiv, 0>(true); 424 SpecializedSetup<cmds::GetVertexAttribIiv, 0>(true);
434 typedef cmds::GetVertexAttribIiv::Result Result; 425 typedef cmds::GetVertexAttribIiv::Result Result;
435 Result* result = static_cast<Result*>(shared_memory_address_); 426 Result* result = static_cast<Result*>(shared_memory_address_);
436 result->size = 0; 427 result->size = 0;
437 cmds::GetVertexAttribIiv cmd; 428 cmds::GetVertexAttribIiv cmd;
438 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_, 429 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_,
439 shared_memory_offset_); 430 shared_memory_offset_);
440 decoder_->set_unsafe_es3_apis_enabled(true);
441 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 431 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
442 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( 432 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(
443 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), 433 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED),
444 result->GetNumResults()); 434 result->GetNumResults());
445 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 435 EXPECT_EQ(GL_NO_ERROR, GetGLError());
446 decoder_->set_unsafe_es3_apis_enabled(false);
447 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
448 } 436 }
449 437
450 TEST_P(GLES2DecoderTest2, GetVertexAttribIuivValidArgs) { 438 TEST_P(GLES3DecoderTest2, GetVertexAttribIuivValidArgs) {
451 SpecializedSetup<cmds::GetVertexAttribIuiv, 0>(true); 439 SpecializedSetup<cmds::GetVertexAttribIuiv, 0>(true);
452 typedef cmds::GetVertexAttribIuiv::Result Result; 440 typedef cmds::GetVertexAttribIuiv::Result Result;
453 Result* result = static_cast<Result*>(shared_memory_address_); 441 Result* result = static_cast<Result*>(shared_memory_address_);
454 result->size = 0; 442 result->size = 0;
455 cmds::GetVertexAttribIuiv cmd; 443 cmds::GetVertexAttribIuiv cmd;
456 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_, 444 cmd.Init(1, GL_VERTEX_ATTRIB_ARRAY_NORMALIZED, shared_memory_id_,
457 shared_memory_offset_); 445 shared_memory_offset_);
458 decoder_->set_unsafe_es3_apis_enabled(true);
459 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 446 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
460 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned( 447 EXPECT_EQ(decoder_->GetGLES2Util()->GLGetNumValuesReturned(
461 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED), 448 GL_VERTEX_ATTRIB_ARRAY_NORMALIZED),
462 result->GetNumResults()); 449 result->GetNumResults());
463 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 450 EXPECT_EQ(GL_NO_ERROR, GetGLError());
464 decoder_->set_unsafe_es3_apis_enabled(false);
465 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
466 } 451 }
467 452
468 TEST_P(GLES2DecoderTest2, HintValidArgs) { 453 TEST_P(GLES2DecoderTest2, HintValidArgs) {
469 EXPECT_CALL(*gl_, Hint(GL_GENERATE_MIPMAP_HINT, GL_FASTEST)); 454 EXPECT_CALL(*gl_, Hint(GL_GENERATE_MIPMAP_HINT, GL_FASTEST));
470 SpecializedSetup<cmds::Hint, 0>(true); 455 SpecializedSetup<cmds::Hint, 0>(true);
471 cmds::Hint cmd; 456 cmds::Hint cmd;
472 cmd.Init(GL_GENERATE_MIPMAP_HINT, GL_FASTEST); 457 cmd.Init(GL_GENERATE_MIPMAP_HINT, GL_FASTEST);
473 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 458 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
474 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 459 EXPECT_EQ(GL_NO_ERROR, GetGLError());
475 } 460 }
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
583 SpecializedSetup<cmds::IsRenderbuffer, 0>(false); 568 SpecializedSetup<cmds::IsRenderbuffer, 0>(false);
584 cmds::IsRenderbuffer cmd; 569 cmds::IsRenderbuffer cmd;
585 cmd.Init(client_renderbuffer_id_, kInvalidSharedMemoryId, 570 cmd.Init(client_renderbuffer_id_, kInvalidSharedMemoryId,
586 shared_memory_offset_); 571 shared_memory_offset_);
587 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 572 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
588 cmd.Init(client_renderbuffer_id_, shared_memory_id_, 573 cmd.Init(client_renderbuffer_id_, shared_memory_id_,
589 kInvalidSharedMemoryOffset); 574 kInvalidSharedMemoryOffset);
590 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 575 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
591 } 576 }
592 577
593 TEST_P(GLES2DecoderTest2, IsSamplerValidArgs) { 578 TEST_P(GLES3DecoderTest2, IsSamplerValidArgs) {
594 SpecializedSetup<cmds::IsSampler, 0>(true); 579 SpecializedSetup<cmds::IsSampler, 0>(true);
595 cmds::IsSampler cmd; 580 cmds::IsSampler cmd;
596 cmd.Init(client_sampler_id_, shared_memory_id_, shared_memory_offset_); 581 cmd.Init(client_sampler_id_, shared_memory_id_, shared_memory_offset_);
597 decoder_->set_unsafe_es3_apis_enabled(true);
598 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 582 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
599 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 583 EXPECT_EQ(GL_NO_ERROR, GetGLError());
600 decoder_->set_unsafe_es3_apis_enabled(false);
601 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
602 } 584 }
603 585
604 TEST_P(GLES2DecoderTest2, IsSamplerInvalidArgsBadSharedMemoryId) { 586 TEST_P(GLES3DecoderTest2, IsSamplerInvalidArgsBadSharedMemoryId) {
605 SpecializedSetup<cmds::IsSampler, 0>(false); 587 SpecializedSetup<cmds::IsSampler, 0>(false);
606 decoder_->set_unsafe_es3_apis_enabled(true);
607 cmds::IsSampler cmd; 588 cmds::IsSampler cmd;
608 cmd.Init(client_sampler_id_, kInvalidSharedMemoryId, shared_memory_offset_); 589 cmd.Init(client_sampler_id_, kInvalidSharedMemoryId, shared_memory_offset_);
609 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 590 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
610 cmd.Init(client_sampler_id_, shared_memory_id_, kInvalidSharedMemoryOffset); 591 cmd.Init(client_sampler_id_, shared_memory_id_, kInvalidSharedMemoryOffset);
611 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 592 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
612 decoder_->set_unsafe_es3_apis_enabled(true);
613 } 593 }
614 594
615 TEST_P(GLES2DecoderTest2, IsShaderValidArgs) { 595 TEST_P(GLES2DecoderTest2, IsShaderValidArgs) {
616 SpecializedSetup<cmds::IsShader, 0>(true); 596 SpecializedSetup<cmds::IsShader, 0>(true);
617 cmds::IsShader cmd; 597 cmds::IsShader cmd;
618 cmd.Init(client_shader_id_, shared_memory_id_, shared_memory_offset_); 598 cmd.Init(client_shader_id_, shared_memory_id_, shared_memory_offset_);
619 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 599 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
620 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 600 EXPECT_EQ(GL_NO_ERROR, GetGLError());
621 } 601 }
622 602
623 TEST_P(GLES2DecoderTest2, IsShaderInvalidArgsBadSharedMemoryId) { 603 TEST_P(GLES2DecoderTest2, IsShaderInvalidArgsBadSharedMemoryId) {
624 SpecializedSetup<cmds::IsShader, 0>(false); 604 SpecializedSetup<cmds::IsShader, 0>(false);
625 cmds::IsShader cmd; 605 cmds::IsShader cmd;
626 cmd.Init(client_shader_id_, kInvalidSharedMemoryId, shared_memory_offset_); 606 cmd.Init(client_shader_id_, kInvalidSharedMemoryId, shared_memory_offset_);
627 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 607 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
628 cmd.Init(client_shader_id_, shared_memory_id_, kInvalidSharedMemoryOffset); 608 cmd.Init(client_shader_id_, shared_memory_id_, kInvalidSharedMemoryOffset);
629 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 609 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
630 } 610 }
631 611
632 TEST_P(GLES2DecoderTest2, IsSyncValidArgs) { 612 TEST_P(GLES3DecoderTest2, IsSyncValidArgs) {
633 SpecializedSetup<cmds::IsSync, 0>(true); 613 SpecializedSetup<cmds::IsSync, 0>(true);
634 cmds::IsSync cmd; 614 cmds::IsSync cmd;
635 cmd.Init(client_sync_id_, shared_memory_id_, shared_memory_offset_); 615 cmd.Init(client_sync_id_, shared_memory_id_, shared_memory_offset_);
636 decoder_->set_unsafe_es3_apis_enabled(true);
637 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 616 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
638 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 617 EXPECT_EQ(GL_NO_ERROR, GetGLError());
639 decoder_->set_unsafe_es3_apis_enabled(false);
640 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
641 } 618 }
642 619
643 TEST_P(GLES2DecoderTest2, IsSyncInvalidArgsBadSharedMemoryId) { 620 TEST_P(GLES3DecoderTest2, IsSyncInvalidArgsBadSharedMemoryId) {
644 SpecializedSetup<cmds::IsSync, 0>(false); 621 SpecializedSetup<cmds::IsSync, 0>(false);
645 decoder_->set_unsafe_es3_apis_enabled(true);
646 cmds::IsSync cmd; 622 cmds::IsSync cmd;
647 cmd.Init(client_sync_id_, kInvalidSharedMemoryId, shared_memory_offset_); 623 cmd.Init(client_sync_id_, kInvalidSharedMemoryId, shared_memory_offset_);
648 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 624 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
649 cmd.Init(client_sync_id_, shared_memory_id_, kInvalidSharedMemoryOffset); 625 cmd.Init(client_sync_id_, shared_memory_id_, kInvalidSharedMemoryOffset);
650 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 626 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
651 decoder_->set_unsafe_es3_apis_enabled(true);
652 } 627 }
653 628
654 TEST_P(GLES2DecoderTest2, IsTextureValidArgs) { 629 TEST_P(GLES2DecoderTest2, IsTextureValidArgs) {
655 SpecializedSetup<cmds::IsTexture, 0>(true); 630 SpecializedSetup<cmds::IsTexture, 0>(true);
656 cmds::IsTexture cmd; 631 cmds::IsTexture cmd;
657 cmd.Init(client_texture_id_, shared_memory_id_, shared_memory_offset_); 632 cmd.Init(client_texture_id_, shared_memory_id_, shared_memory_offset_);
658 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 633 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
659 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 634 EXPECT_EQ(GL_NO_ERROR, GetGLError());
660 } 635 }
661 636
662 TEST_P(GLES2DecoderTest2, IsTextureInvalidArgsBadSharedMemoryId) { 637 TEST_P(GLES2DecoderTest2, IsTextureInvalidArgsBadSharedMemoryId) {
663 SpecializedSetup<cmds::IsTexture, 0>(false); 638 SpecializedSetup<cmds::IsTexture, 0>(false);
664 cmds::IsTexture cmd; 639 cmds::IsTexture cmd;
665 cmd.Init(client_texture_id_, kInvalidSharedMemoryId, shared_memory_offset_); 640 cmd.Init(client_texture_id_, kInvalidSharedMemoryId, shared_memory_offset_);
666 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 641 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
667 cmd.Init(client_texture_id_, shared_memory_id_, kInvalidSharedMemoryOffset); 642 cmd.Init(client_texture_id_, shared_memory_id_, kInvalidSharedMemoryOffset);
668 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 643 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
669 } 644 }
670 645
671 TEST_P(GLES2DecoderTest2, IsTransformFeedbackValidArgs) { 646 TEST_P(GLES3DecoderTest2, IsTransformFeedbackValidArgs) {
672 SpecializedSetup<cmds::IsTransformFeedback, 0>(true); 647 SpecializedSetup<cmds::IsTransformFeedback, 0>(true);
673 cmds::IsTransformFeedback cmd; 648 cmds::IsTransformFeedback cmd;
674 cmd.Init(client_transformfeedback_id_, shared_memory_id_, 649 cmd.Init(client_transformfeedback_id_, shared_memory_id_,
675 shared_memory_offset_); 650 shared_memory_offset_);
676 decoder_->set_unsafe_es3_apis_enabled(true);
677 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 651 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
678 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 652 EXPECT_EQ(GL_NO_ERROR, GetGLError());
679 decoder_->set_unsafe_es3_apis_enabled(false);
680 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
681 } 653 }
682 654
683 TEST_P(GLES2DecoderTest2, IsTransformFeedbackInvalidArgsBadSharedMemoryId) { 655 TEST_P(GLES3DecoderTest2, IsTransformFeedbackInvalidArgsBadSharedMemoryId) {
684 SpecializedSetup<cmds::IsTransformFeedback, 0>(false); 656 SpecializedSetup<cmds::IsTransformFeedback, 0>(false);
685 decoder_->set_unsafe_es3_apis_enabled(true);
686 cmds::IsTransformFeedback cmd; 657 cmds::IsTransformFeedback cmd;
687 cmd.Init(client_transformfeedback_id_, kInvalidSharedMemoryId, 658 cmd.Init(client_transformfeedback_id_, kInvalidSharedMemoryId,
688 shared_memory_offset_); 659 shared_memory_offset_);
689 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 660 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
690 cmd.Init(client_transformfeedback_id_, shared_memory_id_, 661 cmd.Init(client_transformfeedback_id_, shared_memory_id_,
691 kInvalidSharedMemoryOffset); 662 kInvalidSharedMemoryOffset);
692 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd)); 663 EXPECT_EQ(error::kOutOfBounds, ExecuteCmd(cmd));
693 decoder_->set_unsafe_es3_apis_enabled(true);
694 } 664 }
695 665
696 TEST_P(GLES2DecoderTest2, LineWidthValidArgs) { 666 TEST_P(GLES2DecoderTest2, LineWidthValidArgs) {
697 EXPECT_CALL(*gl_, LineWidth(2.0f)); 667 EXPECT_CALL(*gl_, LineWidth(2.0f));
698 SpecializedSetup<cmds::LineWidth, 0>(true); 668 SpecializedSetup<cmds::LineWidth, 0>(true);
699 cmds::LineWidth cmd; 669 cmds::LineWidth cmd;
700 cmd.Init(2.0f); 670 cmd.Init(2.0f);
701 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 671 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
702 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 672 EXPECT_EQ(GL_NO_ERROR, GetGLError());
703 } 673 }
(...skipping 25 matching lines...) Expand all
729 699
730 TEST_P(GLES2DecoderTest2, PolygonOffsetValidArgs) { 700 TEST_P(GLES2DecoderTest2, PolygonOffsetValidArgs) {
731 EXPECT_CALL(*gl_, PolygonOffset(1, 2)); 701 EXPECT_CALL(*gl_, PolygonOffset(1, 2));
732 SpecializedSetup<cmds::PolygonOffset, 0>(true); 702 SpecializedSetup<cmds::PolygonOffset, 0>(true);
733 cmds::PolygonOffset cmd; 703 cmds::PolygonOffset cmd;
734 cmd.Init(1, 2); 704 cmd.Init(1, 2);
735 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 705 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
736 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 706 EXPECT_EQ(GL_NO_ERROR, GetGLError());
737 } 707 }
738 708
739 TEST_P(GLES2DecoderTest2, ReadBufferValidArgs) { 709 TEST_P(GLES3DecoderTest2, ReadBufferValidArgs) {
740 EXPECT_CALL(*gl_, ReadBuffer(GL_NONE)); 710 EXPECT_CALL(*gl_, ReadBuffer(GL_NONE));
741 SpecializedSetup<cmds::ReadBuffer, 0>(true); 711 SpecializedSetup<cmds::ReadBuffer, 0>(true);
742 cmds::ReadBuffer cmd; 712 cmds::ReadBuffer cmd;
743 cmd.Init(GL_NONE); 713 cmd.Init(GL_NONE);
744 decoder_->set_unsafe_es3_apis_enabled(true);
745 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 714 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
746 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 715 EXPECT_EQ(GL_NO_ERROR, GetGLError());
747 decoder_->set_unsafe_es3_apis_enabled(false);
748 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
749 } 716 }
750 717
751 TEST_P(GLES2DecoderTest2, RenderbufferStorageValidArgs) { 718 TEST_P(GLES2DecoderTest2, RenderbufferStorageValidArgs) {
752 SpecializedSetup<cmds::RenderbufferStorage, 0>(true); 719 SpecializedSetup<cmds::RenderbufferStorage, 0>(true);
753 cmds::RenderbufferStorage cmd; 720 cmds::RenderbufferStorage cmd;
754 cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, 4); 721 cmd.Init(GL_RENDERBUFFER, GL_RGBA4, 3, 4);
755 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 722 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
756 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 723 EXPECT_EQ(GL_NO_ERROR, GetGLError());
757 } 724 }
758 725
(...skipping 26 matching lines...) Expand all
785 752
786 TEST_P(GLES2DecoderTest2, SampleCoverageValidArgs) { 753 TEST_P(GLES2DecoderTest2, SampleCoverageValidArgs) {
787 EXPECT_CALL(*gl_, SampleCoverage(1, true)); 754 EXPECT_CALL(*gl_, SampleCoverage(1, true));
788 SpecializedSetup<cmds::SampleCoverage, 0>(true); 755 SpecializedSetup<cmds::SampleCoverage, 0>(true);
789 cmds::SampleCoverage cmd; 756 cmds::SampleCoverage cmd;
790 cmd.Init(1, true); 757 cmd.Init(1, true);
791 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 758 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
792 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 759 EXPECT_EQ(GL_NO_ERROR, GetGLError());
793 } 760 }
794 761
795 TEST_P(GLES2DecoderTest2, SamplerParameterfValidArgs) { 762 TEST_P(GLES3DecoderTest2, SamplerParameterfValidArgs) {
796 EXPECT_CALL(*gl_, SamplerParameterf(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 763 EXPECT_CALL(*gl_, SamplerParameterf(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
797 GL_NEAREST)); 764 GL_NEAREST));
798 SpecializedSetup<cmds::SamplerParameterf, 0>(true); 765 SpecializedSetup<cmds::SamplerParameterf, 0>(true);
799 cmds::SamplerParameterf cmd; 766 cmds::SamplerParameterf cmd;
800 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, GL_NEAREST); 767 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
801 decoder_->set_unsafe_es3_apis_enabled(true);
802 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 768 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
803 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 769 EXPECT_EQ(GL_NO_ERROR, GetGLError());
804 decoder_->set_unsafe_es3_apis_enabled(false);
805 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
806 } 770 }
807 771
808 TEST_P(GLES2DecoderTest2, SamplerParameterfvImmediateValidArgs) { 772 TEST_P(GLES3DecoderTest2, SamplerParameterfvImmediateValidArgs) {
809 cmds::SamplerParameterfvImmediate& cmd = 773 cmds::SamplerParameterfvImmediate& cmd =
810 *GetImmediateAs<cmds::SamplerParameterfvImmediate>(); 774 *GetImmediateAs<cmds::SamplerParameterfvImmediate>();
811 SpecializedSetup<cmds::SamplerParameterfvImmediate, 0>(true); 775 SpecializedSetup<cmds::SamplerParameterfvImmediate, 0>(true);
812 GLfloat temp[1] = { 776 GLfloat temp[1] = {
813 GL_NEAREST, 777 GL_NEAREST,
814 }; 778 };
815 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, &temp[0]); 779 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, &temp[0]);
816 EXPECT_CALL(*gl_, SamplerParameterf(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 780 EXPECT_CALL(*gl_, SamplerParameterf(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
817 temp[0])); 781 temp[0]));
818 decoder_->set_unsafe_es3_apis_enabled(true);
819 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); 782 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
820 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 783 EXPECT_EQ(GL_NO_ERROR, GetGLError());
821 decoder_->set_unsafe_es3_apis_enabled(false);
822 EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
823 } 784 }
824 785
825 TEST_P(GLES2DecoderTest2, SamplerParameteriValidArgs) { 786 TEST_P(GLES3DecoderTest2, SamplerParameteriValidArgs) {
826 EXPECT_CALL(*gl_, SamplerParameteri(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 787 EXPECT_CALL(*gl_, SamplerParameteri(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
827 GL_NEAREST)); 788 GL_NEAREST));
828 SpecializedSetup<cmds::SamplerParameteri, 0>(true); 789 SpecializedSetup<cmds::SamplerParameteri, 0>(true);
829 cmds::SamplerParameteri cmd; 790 cmds::SamplerParameteri cmd;
830 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, GL_NEAREST); 791 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, GL_NEAREST);
831 decoder_->set_unsafe_es3_apis_enabled(true);
832 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 792 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
833 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 793 EXPECT_EQ(GL_NO_ERROR, GetGLError());
834 decoder_->set_unsafe_es3_apis_enabled(false);
835 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
836 } 794 }
837 795
838 TEST_P(GLES2DecoderTest2, SamplerParameterivImmediateValidArgs) { 796 TEST_P(GLES3DecoderTest2, SamplerParameterivImmediateValidArgs) {
839 cmds::SamplerParameterivImmediate& cmd = 797 cmds::SamplerParameterivImmediate& cmd =
840 *GetImmediateAs<cmds::SamplerParameterivImmediate>(); 798 *GetImmediateAs<cmds::SamplerParameterivImmediate>();
841 SpecializedSetup<cmds::SamplerParameterivImmediate, 0>(true); 799 SpecializedSetup<cmds::SamplerParameterivImmediate, 0>(true);
842 GLint temp[1] = { 800 GLint temp[1] = {
843 GL_NEAREST, 801 GL_NEAREST,
844 }; 802 };
845 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, &temp[0]); 803 cmd.Init(client_sampler_id_, GL_TEXTURE_MAG_FILTER, &temp[0]);
846 EXPECT_CALL(*gl_, SamplerParameteri(kServiceSamplerId, GL_TEXTURE_MAG_FILTER, 804 EXPECT_CALL(*gl_, SamplerParameteri(kServiceSamplerId, GL_TEXTURE_MAG_FILTER,
847 temp[0])); 805 temp[0]));
848 decoder_->set_unsafe_es3_apis_enabled(true);
849 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); 806 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
850 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 807 EXPECT_EQ(GL_NO_ERROR, GetGLError());
851 decoder_->set_unsafe_es3_apis_enabled(false);
852 EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
853 } 808 }
854 809
855 TEST_P(GLES2DecoderTest2, ScissorValidArgs) { 810 TEST_P(GLES2DecoderTest2, ScissorValidArgs) {
856 EXPECT_CALL(*gl_, Scissor(1, 2, 3, 4)); 811 EXPECT_CALL(*gl_, Scissor(1, 2, 3, 4));
857 SpecializedSetup<cmds::Scissor, 0>(true); 812 SpecializedSetup<cmds::Scissor, 0>(true);
858 cmds::Scissor cmd; 813 cmds::Scissor cmd;
859 cmd.Init(1, 2, 3, 4); 814 cmd.Init(1, 2, 3, 4);
860 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 815 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
861 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 816 EXPECT_EQ(GL_NO_ERROR, GetGLError());
862 } 817 }
(...skipping 17 matching lines...) Expand all
880 } 835 }
881 836
882 TEST_P(GLES2DecoderTest2, ShaderSourceBucketValidArgs) { 837 TEST_P(GLES2DecoderTest2, ShaderSourceBucketValidArgs) {
883 const uint32_t kBucketId = 123; 838 const uint32_t kBucketId = 123;
884 const char kSource0[] = "hello"; 839 const char kSource0[] = "hello";
885 const char* kSource[] = {kSource0}; 840 const char* kSource[] = {kSource0};
886 const char kValidStrEnd = 0; 841 const char kValidStrEnd = 0;
887 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); 842 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
888 cmds::ShaderSourceBucket cmd; 843 cmds::ShaderSourceBucket cmd;
889 cmd.Init(client_shader_id_, kBucketId); 844 cmd.Init(client_shader_id_, kBucketId);
890 decoder_->set_unsafe_es3_apis_enabled(true);
891 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 845 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
892 } 846 }
893 847
894 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidArgs) { 848 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidArgs) {
895 const uint32_t kBucketId = 123; 849 const uint32_t kBucketId = 123;
896 const char kSource0[] = "hello"; 850 const char kSource0[] = "hello";
897 const char* kSource[] = {kSource0}; 851 const char* kSource[] = {kSource0};
898 const char kValidStrEnd = 0; 852 const char kValidStrEnd = 0;
899 decoder_->set_unsafe_es3_apis_enabled(true);
900 cmds::ShaderSourceBucket cmd; 853 cmds::ShaderSourceBucket cmd;
901 // Test no bucket. 854 // Test no bucket.
902 cmd.Init(client_shader_id_, kBucketId); 855 cmd.Init(client_shader_id_, kBucketId);
903 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); 856 EXPECT_NE(error::kNoError, ExecuteCmd(cmd));
904 // Test invalid client. 857 // Test invalid client.
905 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); 858 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
906 cmd.Init(kInvalidClientId, kBucketId); 859 cmd.Init(kInvalidClientId, kBucketId);
907 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 860 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
908 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); 861 EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
909 } 862 }
910 863
911 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidHeader) { 864 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidHeader) {
912 const uint32_t kBucketId = 123; 865 const uint32_t kBucketId = 123;
913 const char kSource0[] = "hello"; 866 const char kSource0[] = "hello";
914 const char* kSource[] = {kSource0}; 867 const char* kSource[] = {kSource0};
915 const char kValidStrEnd = 0; 868 const char kValidStrEnd = 0;
916 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource)); 869 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource));
917 const GLsizei kTests[] = { 870 const GLsizei kTests[] = {
918 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1, 871 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1,
919 }; 872 };
920 decoder_->set_unsafe_es3_apis_enabled(true);
921 for (size_t ii = 0; ii < arraysize(kTests); ++ii) { 873 for (size_t ii = 0; ii < arraysize(kTests); ++ii) {
922 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd); 874 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd);
923 cmds::ShaderSourceBucket cmd; 875 cmds::ShaderSourceBucket cmd;
924 cmd.Init(client_shader_id_, kBucketId); 876 cmd.Init(client_shader_id_, kBucketId);
925 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); 877 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
926 } 878 }
927 } 879 }
928 880
929 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidStringEnding) { 881 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidStringEnding) {
930 const uint32_t kBucketId = 123; 882 const uint32_t kBucketId = 123;
931 const char kSource0[] = "hello"; 883 const char kSource0[] = "hello";
932 const char* kSource[] = {kSource0}; 884 const char* kSource[] = {kSource0};
933 const char kInvalidStrEnd = '*'; 885 const char kInvalidStrEnd = '*';
934 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd); 886 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd);
935 cmds::ShaderSourceBucket cmd; 887 cmds::ShaderSourceBucket cmd;
936 cmd.Init(client_shader_id_, kBucketId); 888 cmd.Init(client_shader_id_, kBucketId);
937 decoder_->set_unsafe_es3_apis_enabled(true);
938 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); 889 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
939 } 890 }
940 891
941 TEST_P(GLES2DecoderTest2, StencilFuncValidArgs) { 892 TEST_P(GLES2DecoderTest2, StencilFuncValidArgs) {
942 EXPECT_CALL(*gl_, StencilFunc(GL_NEVER, 2, 3)); 893 EXPECT_CALL(*gl_, StencilFunc(GL_NEVER, 2, 3));
943 SpecializedSetup<cmds::StencilFunc, 0>(true); 894 SpecializedSetup<cmds::StencilFunc, 0>(true);
944 cmds::StencilFunc cmd; 895 cmds::StencilFunc cmd;
945 cmd.Init(GL_NEVER, 2, 3); 896 cmd.Init(GL_NEVER, 2, 3);
946 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 897 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
947 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 898 EXPECT_EQ(GL_NO_ERROR, GetGLError());
(...skipping 227 matching lines...) Expand 10 before | Expand all | Expand 10 after
1175 SpecializedSetup<cmds::TexParameterivImmediate, 0>(false); 1126 SpecializedSetup<cmds::TexParameterivImmediate, 0>(false);
1176 GLint temp[1] = { 1127 GLint temp[1] = {
1177 GL_NEAREST, 1128 GL_NEAREST,
1178 }; 1129 };
1179 cmd.Init(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, &temp[0]); 1130 cmd.Init(GL_TEXTURE_2D, GL_GENERATE_MIPMAP, &temp[0]);
1180 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); 1131 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
1181 1132
1182 EXPECT_EQ(GL_INVALID_ENUM, GetGLError()); 1133 EXPECT_EQ(GL_INVALID_ENUM, GetGLError());
1183 } 1134 }
1184 1135
1185 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketValidArgs) { 1136 TEST_P(GLES3DecoderTest2, TransformFeedbackVaryingsBucketValidArgs) {
1186 const uint32_t kBucketId = 123; 1137 const uint32_t kBucketId = 123;
1187 const char kSource0[] = "hello"; 1138 const char kSource0[] = "hello";
1188 const char* kSource[] = {kSource0}; 1139 const char* kSource[] = {kSource0};
1189 const char kValidStrEnd = 0; 1140 const char kValidStrEnd = 0;
1190 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); 1141 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
1191 cmds::TransformFeedbackVaryingsBucket cmd; 1142 cmds::TransformFeedbackVaryingsBucket cmd;
1192 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); 1143 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS);
1193 decoder_->set_unsafe_es3_apis_enabled(true);
1194 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 1144 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
1195 decoder_->set_unsafe_es3_apis_enabled(false);
1196 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd));
1197 } 1145 }
1198 1146
1199 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidArgs) { 1147 TEST_P(GLES3DecoderTest2, TransformFeedbackVaryingsBucketInvalidArgs) {
1200 const uint32_t kBucketId = 123; 1148 const uint32_t kBucketId = 123;
1201 const char kSource0[] = "hello"; 1149 const char kSource0[] = "hello";
1202 const char* kSource[] = {kSource0}; 1150 const char* kSource[] = {kSource0};
1203 const char kValidStrEnd = 0; 1151 const char kValidStrEnd = 0;
1204 decoder_->set_unsafe_es3_apis_enabled(true);
1205 cmds::TransformFeedbackVaryingsBucket cmd; 1152 cmds::TransformFeedbackVaryingsBucket cmd;
1206 // Test no bucket. 1153 // Test no bucket.
1207 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); 1154 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS);
1208 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); 1155 EXPECT_NE(error::kNoError, ExecuteCmd(cmd));
1209 // Test invalid client. 1156 // Test invalid client.
1210 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); 1157 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
1211 cmd.Init(kInvalidClientId, kBucketId, GL_INTERLEAVED_ATTRIBS); 1158 cmd.Init(kInvalidClientId, kBucketId, GL_INTERLEAVED_ATTRIBS);
1212 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 1159 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
1213 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); 1160 EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
1214 } 1161 }
1215 1162
1216 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidHeader) { 1163 TEST_P(GLES3DecoderTest2, TransformFeedbackVaryingsBucketInvalidHeader) {
1217 const uint32_t kBucketId = 123; 1164 const uint32_t kBucketId = 123;
1218 const char kSource0[] = "hello"; 1165 const char kSource0[] = "hello";
1219 const char* kSource[] = {kSource0}; 1166 const char* kSource[] = {kSource0};
1220 const char kValidStrEnd = 0; 1167 const char kValidStrEnd = 0;
1221 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource)); 1168 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource));
1222 const GLsizei kTests[] = { 1169 const GLsizei kTests[] = {
1223 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1, 1170 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1,
1224 }; 1171 };
1225 decoder_->set_unsafe_es3_apis_enabled(true);
1226 for (size_t ii = 0; ii < arraysize(kTests); ++ii) { 1172 for (size_t ii = 0; ii < arraysize(kTests); ++ii) {
1227 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd); 1173 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd);
1228 cmds::TransformFeedbackVaryingsBucket cmd; 1174 cmds::TransformFeedbackVaryingsBucket cmd;
1229 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); 1175 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS);
1230 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); 1176 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
1231 } 1177 }
1232 } 1178 }
1233 1179
1234 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidStringEnding) { 1180 TEST_P(GLES3DecoderTest2, TransformFeedbackVaryingsBucketInvalidStringEnding) {
1235 const uint32_t kBucketId = 123; 1181 const uint32_t kBucketId = 123;
1236 const char kSource0[] = "hello"; 1182 const char kSource0[] = "hello";
1237 const char* kSource[] = {kSource0}; 1183 const char* kSource[] = {kSource0};
1238 const char kInvalidStrEnd = '*'; 1184 const char kInvalidStrEnd = '*';
1239 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd); 1185 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd);
1240 cmds::TransformFeedbackVaryingsBucket cmd; 1186 cmds::TransformFeedbackVaryingsBucket cmd;
1241 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); 1187 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS);
1242 decoder_->set_unsafe_es3_apis_enabled(true);
1243 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); 1188 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
1244 } 1189 }
1245 1190
1246 TEST_P(GLES2DecoderTest2, Uniform1fValidArgs) { 1191 TEST_P(GLES2DecoderTest2, Uniform1fValidArgs) {
1247 EXPECT_CALL(*gl_, Uniform1fv(1, 1, _)); 1192 EXPECT_CALL(*gl_, Uniform1fv(1, 1, _));
1248 SpecializedSetup<cmds::Uniform1f, 0>(true); 1193 SpecializedSetup<cmds::Uniform1f, 0>(true);
1249 cmds::Uniform1f cmd; 1194 cmds::Uniform1f cmd;
1250 cmd.Init(1, 2); 1195 cmd.Init(1, 2);
1251 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); 1196 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
1252 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 1197 EXPECT_EQ(GL_NO_ERROR, GetGLError());
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after
1383 SpecializedSetup<cmds::Uniform4ivImmediate, 0>(true); 1328 SpecializedSetup<cmds::Uniform4ivImmediate, 0>(true);
1384 GLint temp[4 * 2] = { 1329 GLint temp[4 * 2] = {
1385 0, 1330 0,
1386 }; 1331 };
1387 EXPECT_CALL(*gl_, Uniform4iv(1, 2, PointsToArray(temp, 4))); 1332 EXPECT_CALL(*gl_, Uniform4iv(1, 2, PointsToArray(temp, 4)));
1388 cmd.Init(1, 2, &temp[0]); 1333 cmd.Init(1, 2, &temp[0]);
1389 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); 1334 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
1390 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 1335 EXPECT_EQ(GL_NO_ERROR, GetGLError());
1391 } 1336 }
1392 1337
1393 TEST_P(GLES2DecoderTest2, UniformMatrix2x3fvImmediateValidArgs) { 1338 TEST_P(GLES3DecoderTest2, UniformMatrix2x3fvImmediateValidArgs) {
1394 cmds::UniformMatrix2x3fvImmediate& cmd = 1339 cmds::UniformMatrix2x3fvImmediate& cmd =
1395 *GetImmediateAs<cmds::UniformMatrix2x3fvImmediate>(); 1340 *GetImmediateAs<cmds::UniformMatrix2x3fvImmediate>();
1396 SpecializedSetup<cmds::UniformMatrix2x3fvImmediate, 0>(true); 1341 SpecializedSetup<cmds::UniformMatrix2x3fvImmediate, 0>(true);
1397 GLfloat temp[6 * 2] = { 1342 GLfloat temp[6 * 2] = {
1398 0, 1343 0,
1399 }; 1344 };
1400 EXPECT_CALL(*gl_, UniformMatrix2x3fv(1, 2, true, PointsToArray(temp, 6))); 1345 EXPECT_CALL(*gl_, UniformMatrix2x3fv(1, 2, true, PointsToArray(temp, 6)));
1401 cmd.Init(1, 2, true, &temp[0]); 1346 cmd.Init(1, 2, true, &temp[0]);
1402 decoder_->set_unsafe_es3_apis_enabled(true);
1403 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); 1347 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp)));
1404 EXPECT_EQ(GL_NO_ERROR, GetGLError()); 1348 EXPECT_EQ(GL_NO_ERROR, GetGLError());
1405 decoder_->set_unsafe_es3_apis_enabled(false);
1406 EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp)));
1407 } 1349 }
1408 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_ 1350 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder_unittest_2.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder_unittest_3.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698