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

Unified Diff: gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h

Issue 885443002: Roll Chrome into Mojo. (Closed) Base URL: https://github.com/domokit/mojo.git@master
Patch Set: Rebase to ToT mojo Created 5 years, 11 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
Index: gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
diff --git a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
index 8670cbc31a6523eed8b1fb968f9148a2faa311bc..a5831d6c8df847ed317f8d919908d90ef4353000 100644
--- a/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
+++ b/gpu/command_buffer/service/gles2_cmd_decoder_unittest_2_autogen.h
@@ -12,6 +12,8 @@
#ifndef GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
#define GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_
+// TODO(gman): GetUniformLocation
+
TEST_P(GLES2DecoderTest2, GetVertexAttribfvValidArgs) {
SpecializedSetup<cmds::GetVertexAttribfv, 0>(true);
typedef cmds::GetVertexAttribfv::Result Result;
@@ -540,7 +542,70 @@ TEST_P(GLES2DecoderTest2, ScissorInvalidArgs3_0) {
}
// TODO(gman): ShaderBinary
-// TODO(gman): ShaderSourceBucket
+TEST_P(GLES2DecoderTest2, ShaderSourceBucketValidArgs) {
+ const uint32 kBucketId = 123;
+ const char kSource0[] = "hello";
+ const char* kSource[] = {kSource0};
+ const char kValidStrEnd = 0;
+ SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
+ cmds::ShaderSourceBucket cmd;
+ cmd.Init(client_shader_id_, kBucketId);
+ decoder_->set_unsafe_es3_apis_enabled(true);
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+}
+
+TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidArgs) {
+ const uint32 kBucketId = 123;
+ const char kSource0[] = "hello";
+ const char* kSource[] = {kSource0};
+ const char kValidStrEnd = 0;
+ decoder_->set_unsafe_es3_apis_enabled(true);
+ cmds::ShaderSourceBucket cmd;
+ // Test no bucket.
+ cmd.Init(client_shader_id_, kBucketId);
+ EXPECT_NE(error::kNoError, ExecuteCmd(cmd));
+ // Test invalid client.
+ SetBucketAsCStrings(kBucketId, 1, kSource, 1, kValidStrEnd);
+ cmd.Init(kInvalidClientId, kBucketId);
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+ EXPECT_EQ(GL_INVALID_VALUE, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidHeader) {
+ const uint32 kBucketId = 123;
+ const char kSource0[] = "hello";
+ const char* kSource[] = {kSource0};
+ const char kValidStrEnd = 0;
+ const GLsizei kCount = static_cast<GLsizei>(arraysize(kSource));
+ const GLsizei kTests[] = {
+ kCount, 0, std::numeric_limits<GLsizei>::max(), -1, kCount,
+ };
+ decoder_->set_unsafe_es3_apis_enabled(true);
+ for (size_t ii = 0; ii < arraysize(kTests); ++ii) {
+ SetBucketAsCStrings(kBucketId, 1, kSource, kTests[ii], kValidStrEnd);
+ cmds::ShaderSourceBucket cmd;
+ cmd.Init(client_shader_id_, kBucketId);
+ if (kTests[ii] == kCount) {
+ EXPECT_EQ(error::kNoError, ExecuteCmd(cmd));
+ } else {
+ EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
+ }
+ }
+ EXPECT_EQ(GL_NO_ERROR, GetGLError());
+}
+
+TEST_P(GLES2DecoderTest2, ShaderSourceBucketInvalidStringEnding) {
+ const uint32 kBucketId = 123;
+ const char kSource0[] = "hello";
+ const char* kSource[] = {kSource0};
+ const char kInvalidStrEnd = '*';
+ SetBucketAsCStrings(kBucketId, 1, kSource, 1, kInvalidStrEnd);
+ cmds::ShaderSourceBucket cmd;
+ cmd.Init(client_shader_id_, kBucketId);
+ decoder_->set_unsafe_es3_apis_enabled(true);
+ EXPECT_EQ(error::kInvalidArguments, ExecuteCmd(cmd));
+ EXPECT_EQ(GL_NO_ERROR, GetGLError());
+}
TEST_P(GLES2DecoderTest2, StencilFuncValidArgs) {
EXPECT_CALL(*gl_, StencilFunc(GL_NEVER, 2, 3));
@@ -1421,6 +1486,4 @@ TEST_P(GLES2DecoderTest2, VertexAttribI4uivImmediateValidArgs) {
}
// TODO(gman): VertexAttribIPointer
-// TODO(gman): VertexAttribPointer
-
#endif // GPU_COMMAND_BUFFER_SERVICE_GLES2_CMD_DECODER_UNITTEST_2_AUTOGEN_H_

Powered by Google App Engine
This is Rietveld 408576698