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 // 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 558 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
569 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 569 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
570 } | 570 } |
571 | 571 |
572 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidHeader) { | 572 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidHeader) { |
573 const uint32 kBucketId = 123; | 573 const uint32 kBucketId = 123; |
574 const char kSource0[] = "hello"; | 574 const char kSource0[] = "hello"; |
575 const char* kSource[] = {kSource0}; | 575 const char* kSource[] = {kSource0}; |
576 const char kValidStrEnd = 0; | 576 const char kValidStrEnd = 0; |
577 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource)); | 577 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource)); |
578 const GLsizei kTests[] = { | 578 const GLsizei kTests[] = { |
579 kCount, 0, std::numeric_limits<GLsizei>::max(), -1, kCount, | 579 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1, |
580 }; | 580 }; |
581 decoder_->set_unsafe_es3_apis_enabled(true); | 581 decoder_->set_unsafe_es3_apis_enabled(true); |
582 for (size_t ii = 0; ii < arraysize(kTests); ++ii) { | 582 for (size_t ii = 0; ii < arraysize(kTests); ++ii) { |
583 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd); | 583 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd); |
584 cmds::ShaderSourceBucket cmd; | 584 cmds::ShaderSourceBucket cmd; |
585 cmd.Init(client_shader_id_, kBucketId); | 585 cmd.Init(client_shader_id_, kBucketId); |
586 if (kTests[ii] == kCount) { | 586 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
587 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | |
588 } else { | |
589 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | |
590 } | |
591 } | 587 } |
592 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | |
593 } | 588 } |
594 | 589 |
595 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidStringEnding) { | 590 TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidStringEnding) { |
596 const uint32 kBucketId = 123; | 591 const uint32 kBucketId = 123; |
597 const char kSource0[] = "hello"; | 592 const char kSource0[] = "hello"; |
598 const char* kSource[] = {kSource0}; | 593 const char* kSource[] = {kSource0}; |
599 const char kInvalidStrEnd = '*'; | 594 const char kInvalidStrEnd = '*'; |
600 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd); | 595 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd); |
601 cmds::ShaderSourceBucket cmd; | 596 cmds::ShaderSourceBucket cmd; |
602 cmd.Init(client_shader_id_, kBucketId); | 597 cmd.Init(client_shader_id_, kBucketId); |
603 decoder_->set_unsafe_es3_apis_enabled(true); | 598 decoder_->set_unsafe_es3_apis_enabled(true); |
604 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); | 599 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
605 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | |
606 } | 600 } |
607 | 601 |
608 TEST_P(GLES2DecoderTest2, StencilFuncValidArgs) { | 602 TEST_P(GLES2DecoderTest2, StencilFuncValidArgs) { |
609 EXPECT_CALL(*gl_, StencilFunc(GL_NEVER, 2, 3)); | 603 EXPECT_CALL(*gl_, StencilFunc(GL_NEVER, 2, 3)); |
610 SpecializedSetup<cmds::StencilFunc, 0>(true); | 604 SpecializedSetup<cmds::StencilFunc, 0>(true); |
611 cmds::StencilFunc cmd; | 605 cmds::StencilFunc cmd; |
612 cmd.Init(GL_NEVER, 2, 3); | 606 cmd.Init(GL_NEVER, 2, 3); |
613 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 607 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
614 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 608 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
615 } | 609 } |
(...skipping 247 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
863 decoder_->set_unsafe_es3_apis_enabled(true); | 857 decoder_->set_unsafe_es3_apis_enabled(true); |
864 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 858 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
865 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 859 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
866 decoder_->set_unsafe_es3_apis_enabled(false); | 860 decoder_->set_unsafe_es3_apis_enabled(false); |
867 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); | 861 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); |
868 } | 862 } |
869 // TODO(gman): TexSubImage2D | 863 // TODO(gman): TexSubImage2D |
870 | 864 |
871 // TODO(gman): TexSubImage3D | 865 // TODO(gman): TexSubImage3D |
872 | 866 |
| 867 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketValidArgs) { |
| 868 EXPECT_CALL(*gl_, TransformFeedbackVaryings(kServiceProgramId, 1, _, |
| 869 GL_INTERLEAVED_ATTRIBS)); |
| 870 const uint32 kBucketId = 123; |
| 871 const char kSource0[] = "hello"; |
| 872 const char* kSource[] = {kSource0}; |
| 873 const char kValidStrEnd = 0; |
| 874 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); |
| 875 cmds::TransformFeedbackVaryingsBucket cmd; |
| 876 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); |
| 877 decoder_->set_unsafe_es3_apis_enabled(true); |
| 878 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 879 decoder_->set_unsafe_es3_apis_enabled(false); |
| 880 EXPECT_EQ(error::kUnknownCommand, ExecuteCmd(cmd)); |
| 881 } |
| 882 |
| 883 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidArgs) { |
| 884 const uint32 kBucketId = 123; |
| 885 const char kSource0[] = "hello"; |
| 886 const char* kSource[] = {kSource0}; |
| 887 const char kValidStrEnd = 0; |
| 888 decoder_->set_unsafe_es3_apis_enabled(true); |
| 889 cmds::TransformFeedbackVaryingsBucket cmd; |
| 890 // Test no bucket. |
| 891 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); |
| 892 EXPECT_NE(error::kNoError, ExecuteCmd(cmd)); |
| 893 // Test invalid client. |
| 894 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd); |
| 895 cmd.Init(kInvalidClientId, kBucketId, GL_INTERLEAVED_ATTRIBS); |
| 896 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
| 897 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
| 898 } |
| 899 |
| 900 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidHeader) { |
| 901 const uint32 kBucketId = 123; |
| 902 const char kSource0[] = "hello"; |
| 903 const char* kSource[] = {kSource0}; |
| 904 const char kValidStrEnd = 0; |
| 905 const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource)); |
| 906 const GLsizei kTests[] = { |
| 907 kCount + 1, 0, std::numeric_limits<GLsizei>::max(), -1, |
| 908 }; |
| 909 decoder_->set_unsafe_es3_apis_enabled(true); |
| 910 for (size_t ii = 0; ii < arraysize(kTests); ++ii) { |
| 911 SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd); |
| 912 cmds::TransformFeedbackVaryingsBucket cmd; |
| 913 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); |
| 914 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 915 } |
| 916 } |
| 917 |
| 918 TEST_P(GLES2DecoderTest2, TransformFeedbackVaryingsBucketInvalidStringEnding) { |
| 919 const uint32 kBucketId = 123; |
| 920 const char kSource0[] = "hello"; |
| 921 const char* kSource[] = {kSource0}; |
| 922 const char kInvalidStrEnd = '*'; |
| 923 SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd); |
| 924 cmds::TransformFeedbackVaryingsBucket cmd; |
| 925 cmd.Init(client_program_id_, kBucketId, GL_INTERLEAVED_ATTRIBS); |
| 926 decoder_->set_unsafe_es3_apis_enabled(true); |
| 927 EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd)); |
| 928 } |
| 929 |
873 TEST_P(GLES2DecoderTest2, Uniform1fValidArgs) { | 930 TEST_P(GLES2DecoderTest2, Uniform1fValidArgs) { |
874 EXPECT_CALL(*gl_, Uniform1fv(1, 1, _)); | 931 EXPECT_CALL(*gl_, Uniform1fv(1, 1, _)); |
875 SpecializedSetup<cmds::Uniform1f, 0>(true); | 932 SpecializedSetup<cmds::Uniform1f, 0>(true); |
876 cmds::Uniform1f cmd; | 933 cmds::Uniform1f cmd; |
877 cmd.Init(1, 2); | 934 cmd.Init(1, 2); |
878 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 935 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
879 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 936 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
880 } | 937 } |
881 | 938 |
882 TEST_P(GLES2DecoderTest2, Uniform1fvImmediateValidArgs) { | 939 TEST_P(GLES2DecoderTest2, Uniform1fvImmediateValidArgs) { |
(...skipping 594 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1477 EXPECT_CALL(*gl_, VertexAttribI4uiv(1, reinterpret_cast<GLuint*>( | 1534 EXPECT_CALL(*gl_, VertexAttribI4uiv(1, reinterpret_cast<GLuint*>( |
1478 ImmediateDataAddress(&cmd)))); | 1535 ImmediateDataAddress(&cmd)))); |
1479 decoder_->set_unsafe_es3_apis_enabled(true); | 1536 decoder_->set_unsafe_es3_apis_enabled(true); |
1480 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); | 1537 EXPECT_EQ(error::kNoError, ExecuteImmediateCmd(cmd, sizeof(temp))); |
1481 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 1538 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
1482 decoder_->set_unsafe_es3_apis_enabled(false); | 1539 decoder_->set_unsafe_es3_apis_enabled(false); |
1483 EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp))); | 1540 EXPECT_EQ(error::kUnknownCommand, ExecuteImmediateCmd(cmd, sizeof(temp))); |
1484 } | 1541 } |
1485 // TODO(gman): VertexAttribIPointer | 1542 // TODO(gman): VertexAttribIPointer |
1486 | 1543 |
1487 // TODO(gman): VertexAttribPointer | |
1488 | |
1489 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_ | 1544 #endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_ |
OLD | NEW |