OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 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 "gpu/command_buffer/service/gles2_cmd_decoder.h" | 5 #include "gpu/command_buffer/service/gles2_cmd_decoder.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/strings/string_number_conversions.h" | 8 #include "base/strings/string_number_conversions.h" |
9 #include "gpu/command_buffer/common/gles2_cmd_format.h" | 9 #include "gpu/command_buffer/common/gles2_cmd_format.h" |
10 #include "gpu/command_buffer/common/gles2_cmd_utils.h" | 10 #include "gpu/command_buffer/common/gles2_cmd_utils.h" |
(...skipping 4721 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4732 false, // request alpha | 4732 false, // request alpha |
4733 false, // request depth | 4733 false, // request depth |
4734 false, // request stencil | 4734 false, // request stencil |
4735 true); // bind generates resource | 4735 true); // bind generates resource |
4736 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, | 4736 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
4737 kServiceRenderbufferId); | 4737 kServiceRenderbufferId); |
4738 EXPECT_CALL(*gl_, GetError()) | 4738 EXPECT_CALL(*gl_, GetError()) |
4739 .WillOnce(Return(GL_NO_ERROR)) | 4739 .WillOnce(Return(GL_NO_ERROR)) |
4740 .WillOnce(Return(GL_OUT_OF_MEMORY)) | 4740 .WillOnce(Return(GL_OUT_OF_MEMORY)) |
4741 .RetiresOnSaturation(); | 4741 .RetiresOnSaturation(); |
4742 EXPECT_CALL(*gl_, RenderbufferStorageMultisampleEXT( | 4742 EXPECT_CALL(*gl_, RenderbufferStorageMultisample( |
4743 GL_RENDERBUFFER, 1, GL_RGBA, 100, 50)) | 4743 GL_RENDERBUFFER, 1, GL_RGBA, 100, 50)) |
4744 .Times(1) | 4744 .Times(1) |
4745 .RetiresOnSaturation(); | 4745 .RetiresOnSaturation(); |
4746 RenderbufferStorageMultisampleCHROMIUM cmd; | 4746 RenderbufferStorageMultisampleCHROMIUM cmd; |
4747 cmd.Init(GL_RENDERBUFFER, 1, GL_RGBA4, 100, 50); | 4747 cmd.Init(GL_RENDERBUFFER, 1, GL_RGBA4, 100, 50); |
4748 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4748 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
4749 EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError()); | 4749 EXPECT_EQ(GL_OUT_OF_MEMORY, GetGLError()); |
4750 } | 4750 } |
4751 | 4751 |
4752 TEST_F(GLES2DecoderManualInitTest, | 4752 TEST_F(GLES2DecoderManualInitTest, |
4753 RenderbufferStorageMultisampleCHROMIUMBadArgs) { | 4753 RenderbufferStorageMultisampleCHROMIUMBadArgs) { |
4754 InitDecoder( | 4754 InitDecoder( |
4755 "GL_EXT_framebuffer_multisample", // extensions | 4755 "GL_EXT_framebuffer_multisample", // extensions |
4756 false, // has alpha | 4756 false, // has alpha |
4757 false, // has depth | 4757 false, // has depth |
4758 false, // has stencil | 4758 false, // has stencil |
4759 false, // request alpha | 4759 false, // request alpha |
4760 false, // request depth | 4760 false, // request depth |
4761 false, // request stencil | 4761 false, // request stencil |
4762 true); // bind generates resource | 4762 true); // bind generates resource |
4763 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, | 4763 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
4764 kServiceRenderbufferId); | 4764 kServiceRenderbufferId); |
4765 EXPECT_CALL(*gl_, RenderbufferStorageMultisampleEXT(_, _, _, _, _)) | 4765 EXPECT_CALL(*gl_, RenderbufferStorageMultisample(_, _, _, _, _)) |
4766 .Times(0) | 4766 .Times(0) |
4767 .RetiresOnSaturation(); | 4767 .RetiresOnSaturation(); |
4768 RenderbufferStorageMultisampleCHROMIUM cmd; | 4768 RenderbufferStorageMultisampleCHROMIUM cmd; |
4769 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples + 1, | 4769 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples + 1, |
4770 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); | 4770 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); |
4771 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4771 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
4772 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); | 4772 EXPECT_EQ(GL_INVALID_VALUE, GetGLError()); |
4773 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, | 4773 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, |
4774 GL_RGBA4, TestHelper::kMaxRenderbufferSize + 1, 1); | 4774 GL_RGBA4, TestHelper::kMaxRenderbufferSize + 1, 1); |
4775 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4775 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
(...skipping 15 matching lines...) Expand all Loading... | |
4791 false, // request stencil | 4791 false, // request stencil |
4792 false); // bind generates resource | 4792 false); // bind generates resource |
4793 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, | 4793 DoBindRenderbuffer(GL_RENDERBUFFER, client_renderbuffer_id_, |
4794 kServiceRenderbufferId); | 4794 kServiceRenderbufferId); |
4795 InSequence sequence; | 4795 InSequence sequence; |
4796 EXPECT_CALL(*gl_, GetError()) | 4796 EXPECT_CALL(*gl_, GetError()) |
4797 .WillOnce(Return(GL_NO_ERROR)) | 4797 .WillOnce(Return(GL_NO_ERROR)) |
4798 .RetiresOnSaturation(); | 4798 .RetiresOnSaturation(); |
4799 EXPECT_CALL( | 4799 EXPECT_CALL( |
4800 *gl_, | 4800 *gl_, |
4801 RenderbufferStorageMultisampleEXT(GL_RENDERBUFFER, | 4801 RenderbufferStorageMultisample(GL_RENDERBUFFER, |
Ken Russell (switch to Gerrit)
2013/12/10 00:07:07
This change is problematic. This test explicitly t
| |
4802 TestHelper::kMaxSamples, | 4802 TestHelper::kMaxSamples, |
4803 GL_RGBA, | 4803 GL_RGBA, |
4804 TestHelper::kMaxRenderbufferSize, | 4804 TestHelper::kMaxRenderbufferSize, |
4805 1)) | 4805 1)) |
4806 .Times(1) | 4806 .Times(1) |
4807 .RetiresOnSaturation(); | 4807 .RetiresOnSaturation(); |
4808 EXPECT_CALL(*gl_, GetError()) | 4808 EXPECT_CALL(*gl_, GetError()) |
4809 .WillOnce(Return(GL_NO_ERROR)) | 4809 .WillOnce(Return(GL_NO_ERROR)) |
4810 .RetiresOnSaturation(); | 4810 .RetiresOnSaturation(); |
4811 RenderbufferStorageMultisampleCHROMIUM cmd; | 4811 RenderbufferStorageMultisampleCHROMIUM cmd; |
4812 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, | 4812 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, |
4813 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); | 4813 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); |
4814 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4814 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
4815 EXPECT_EQ(GL_NO_ERROR, GetGLError()); | 4815 EXPECT_EQ(GL_NO_ERROR, GetGLError()); |
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
4865 RenderbufferStorageMultisampleIMG(GL_RENDERBUFFER, | 4865 RenderbufferStorageMultisampleIMG(GL_RENDERBUFFER, |
4866 TestHelper::kMaxSamples, | 4866 TestHelper::kMaxSamples, |
4867 GL_RGBA, | 4867 GL_RGBA, |
4868 TestHelper::kMaxRenderbufferSize, | 4868 TestHelper::kMaxRenderbufferSize, |
4869 1)) | 4869 1)) |
4870 .Times(1) | 4870 .Times(1) |
4871 .RetiresOnSaturation(); | 4871 .RetiresOnSaturation(); |
4872 } else { | 4872 } else { |
4873 EXPECT_CALL( | 4873 EXPECT_CALL( |
4874 *gl_, | 4874 *gl_, |
4875 RenderbufferStorageMultisampleEXT(GL_RENDERBUFFER, | 4875 RenderbufferStorageMultisample(GL_RENDERBUFFER, |
no sievers
2013/12/05 20:51:57
Here we'd still want RenderbufferStorageMultisampl
oetuaho
2013/12/09 17:17:07
The root problem here is really that the unit test
no sievers
2013/12/09 20:05:24
Or maybe to make it simpler just initialize it wit
Ken Russell (switch to Gerrit)
2013/12/10 00:07:07
There are attempts in other tests, like GLES2Decod
oetuaho
2013/12/10 10:39:05
Yes, the decoder is initialized with the appropria
| |
4876 TestHelper::kMaxSamples, | 4876 TestHelper::kMaxSamples, |
4877 GL_RGBA, | 4877 GL_RGBA, |
4878 TestHelper::kMaxRenderbufferSize, | 4878 TestHelper::kMaxRenderbufferSize, |
4879 1)) | 4879 1)) |
4880 .Times(1) | 4880 .Times(1) |
4881 .RetiresOnSaturation(); | 4881 .RetiresOnSaturation(); |
4882 } | 4882 } |
4883 EXPECT_CALL(*gl_, GetError()) | 4883 EXPECT_CALL(*gl_, GetError()) |
4884 .WillOnce(Return(GL_NO_ERROR)) | 4884 .WillOnce(Return(GL_NO_ERROR)) |
4885 .RetiresOnSaturation(); | 4885 .RetiresOnSaturation(); |
4886 RenderbufferStorageMultisampleEXT cmd; | 4886 RenderbufferStorageMultisampleEXT cmd; |
4887 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, | 4887 cmd.Init(GL_RENDERBUFFER, TestHelper::kMaxSamples, |
4888 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); | 4888 GL_RGBA4, TestHelper::kMaxRenderbufferSize, 1); |
4889 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); | 4889 EXPECT_EQ(error::kNoError, ExecuteCmd(cmd)); |
(...skipping 3959 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
8849 // TODO(gman): TexImage2DImmediate | 8849 // TODO(gman): TexImage2DImmediate |
8850 | 8850 |
8851 // TODO(gman): TexSubImage2DImmediate | 8851 // TODO(gman): TexSubImage2DImmediate |
8852 | 8852 |
8853 // TODO(gman): UseProgram | 8853 // TODO(gman): UseProgram |
8854 | 8854 |
8855 // TODO(gman): SwapBuffers | 8855 // TODO(gman): SwapBuffers |
8856 | 8856 |
8857 } // namespace gles2 | 8857 } // namespace gles2 |
8858 } // namespace gpu | 8858 } // namespace gpu |
OLD | NEW |