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

Side by Side Diff: gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.cc

Issue 224763002: Remove default textures in (!bind_generates_resource) context groups. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Use kBindGeneratesResource in context_group_unittest.cc. Created 6 years, 8 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
OLDNEW
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_unittest_base.h" 5 #include "gpu/command_buffer/service/gles2_cmd_decoder_unittest_base.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 98 matching lines...) Expand 10 before | Expand all | Expand 10 after
109 scoped_refptr<FeatureInfo> feature_info; 109 scoped_refptr<FeatureInfo> feature_info;
110 if (command_line) 110 if (command_line)
111 feature_info = new FeatureInfo(*command_line); 111 feature_info = new FeatureInfo(*command_line);
112 group_ = scoped_refptr<ContextGroup>( 112 group_ = scoped_refptr<ContextGroup>(
113 new ContextGroup(NULL, 113 new ContextGroup(NULL,
114 NULL, 114 NULL,
115 memory_tracker_, 115 memory_tracker_,
116 new ShaderTranslatorCache, 116 new ShaderTranslatorCache,
117 feature_info.get(), 117 feature_info.get(),
118 init.bind_generates_resource)); 118 init.bind_generates_resource));
119 bool use_default_textures = init.bind_generates_resource;
119 120
120 InSequence sequence; 121 InSequence sequence;
121 122
122 surface_ = new gfx::GLSurfaceStub; 123 surface_ = new gfx::GLSurfaceStub;
123 surface_->SetSize(gfx::Size(kBackBufferWidth, kBackBufferHeight)); 124 surface_->SetSize(gfx::Size(kBackBufferWidth, kBackBufferHeight));
124 125
125 // Context needs to be created before initializing ContextGroup, which will 126 // Context needs to be created before initializing ContextGroup, which will
126 // in turn initialize FeatureInfo, which needs a context to determine 127 // in turn initialize FeatureInfo, which needs a context to determine
127 // extension support. 128 // extension support.
128 context_ = new gfx::GLContextStubWithExtensions; 129 context_ = new gfx::GLContextStubWithExtensions;
129 context_->AddExtensionsString(init.extensions.c_str()); 130 context_->AddExtensionsString(init.extensions.c_str());
130 context_->SetGLVersionString(init.gl_version.c_str()); 131 context_->SetGLVersionString(init.gl_version.c_str());
131 132
132 context_->MakeCurrent(surface_.get()); 133 context_->MakeCurrent(surface_.get());
133 gfx::GLSurface::InitializeDynamicMockBindingsForTests(context_); 134 gfx::GLSurface::InitializeDynamicMockBindingsForTests(context_);
134 135
135 TestHelper::SetupContextGroupInitExpectations(gl_.get(), 136 TestHelper::SetupContextGroupInitExpectations(gl_.get(),
136 DisallowedFeatures(), 137 DisallowedFeatures(),
137 init.extensions.c_str(), 138 init.extensions.c_str(),
138 init.gl_version.c_str()); 139 init.gl_version.c_str(),
140 init.bind_generates_resource);
139 141
140 // We initialize the ContextGroup with a MockGLES2Decoder so that 142 // We initialize the ContextGroup with a MockGLES2Decoder so that
141 // we can use the ContextGroup to figure out how the real GLES2Decoder 143 // we can use the ContextGroup to figure out how the real GLES2Decoder
142 // will initialize itself. 144 // will initialize itself.
143 mock_decoder_.reset(new MockGLES2Decoder()); 145 mock_decoder_.reset(new MockGLES2Decoder());
144 EXPECT_TRUE( 146 EXPECT_TRUE(
145 group_->Initialize(mock_decoder_.get(), DisallowedFeatures())); 147 group_->Initialize(mock_decoder_.get(), DisallowedFeatures()));
146 148
147 if (group_->feature_info()->workarounds().init_vertex_attributes) 149 if (group_->feature_info()->workarounds().init_vertex_attributes)
148 AddExpectationsForVertexAttribManager(); 150 AddExpectationsForVertexAttribManager();
(...skipping 26 matching lines...) Expand all
175 .WillOnce(SetArrayArgument<1>( 177 .WillOnce(SetArrayArgument<1>(
176 fixed_attrib_buffer_id, 178 fixed_attrib_buffer_id,
177 fixed_attrib_buffer_id + arraysize(fixed_attrib_buffer_id))) 179 fixed_attrib_buffer_id + arraysize(fixed_attrib_buffer_id)))
178 .RetiresOnSaturation(); 180 .RetiresOnSaturation();
179 181
180 for (GLint tt = 0; tt < TestHelper::kNumTextureUnits; ++tt) { 182 for (GLint tt = 0; tt < TestHelper::kNumTextureUnits; ++tt) {
181 EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE0 + tt)) 183 EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE0 + tt))
182 .Times(1) 184 .Times(1)
183 .RetiresOnSaturation(); 185 .RetiresOnSaturation();
184 if (group_->feature_info()->feature_flags().oes_egl_image_external) { 186 if (group_->feature_info()->feature_flags().oes_egl_image_external) {
185 EXPECT_CALL(*gl_, BindTexture( 187 EXPECT_CALL(*gl_,
186 GL_TEXTURE_EXTERNAL_OES, 188 BindTexture(GL_TEXTURE_EXTERNAL_OES,
187 TestHelper::kServiceDefaultExternalTextureId)) 189 use_default_textures
190 ? TestHelper::kServiceDefaultExternalTextureId
191 : 0))
188 .Times(1) 192 .Times(1)
189 .RetiresOnSaturation(); 193 .RetiresOnSaturation();
190 } 194 }
191 if (group_->feature_info()->feature_flags().arb_texture_rectangle) { 195 if (group_->feature_info()->feature_flags().arb_texture_rectangle) {
192 EXPECT_CALL(*gl_, BindTexture( 196 EXPECT_CALL(
193 GL_TEXTURE_RECTANGLE_ARB, 197 *gl_,
194 TestHelper::kServiceDefaultRectangleTextureId)) 198 BindTexture(GL_TEXTURE_RECTANGLE_ARB,
199 use_default_textures
200 ? TestHelper::kServiceDefaultRectangleTextureId
201 : 0))
195 .Times(1) 202 .Times(1)
196 .RetiresOnSaturation(); 203 .RetiresOnSaturation();
197 } 204 }
198 EXPECT_CALL(*gl_, BindTexture( 205 EXPECT_CALL(*gl_,
199 GL_TEXTURE_CUBE_MAP, TestHelper::kServiceDefaultTextureCubemapId)) 206 BindTexture(GL_TEXTURE_CUBE_MAP,
207 use_default_textures
208 ? TestHelper::kServiceDefaultTextureCubemapId
209 : 0))
200 .Times(1) 210 .Times(1)
201 .RetiresOnSaturation(); 211 .RetiresOnSaturation();
202 EXPECT_CALL(*gl_, BindTexture( 212 EXPECT_CALL(
203 GL_TEXTURE_2D, TestHelper::kServiceDefaultTexture2dId)) 213 *gl_,
214 BindTexture(
215 GL_TEXTURE_2D,
216 use_default_textures ? TestHelper::kServiceDefaultTexture2dId : 0))
204 .Times(1) 217 .Times(1)
205 .RetiresOnSaturation(); 218 .RetiresOnSaturation();
206 } 219 }
207 EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE0)) 220 EXPECT_CALL(*gl_, ActiveTexture(GL_TEXTURE0))
208 .Times(1) 221 .Times(1)
209 .RetiresOnSaturation(); 222 .RetiresOnSaturation();
210 223
211 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, 0)) 224 EXPECT_CALL(*gl_, BindFramebufferEXT(GL_FRAMEBUFFER, 0))
212 .Times(1) 225 .Times(1)
213 .RetiresOnSaturation(); 226 .RetiresOnSaturation();
(...skipping 1239 matching lines...) Expand 10 before | Expand all | Expand 10 after
1453 SetupDefaultProgram(); 1466 SetupDefaultProgram();
1454 } 1467 }
1455 1468
1456 // Include the auto-generated part of this file. We split this because it means 1469 // Include the auto-generated part of this file. We split this because it means
1457 // we can easily edit the non-auto generated parts right here in this file 1470 // we can easily edit the non-auto generated parts right here in this file
1458 // instead of having to edit some template or the code generator. 1471 // instead of having to edit some template or the code generator.
1459 #include "gpu/command_buffer/service/gles2_cmd_decoder_unittest_0_autogen.h" 1472 #include "gpu/command_buffer/service/gles2_cmd_decoder_unittest_0_autogen.h"
1460 1473
1461 } // namespace gles2 1474 } // namespace gles2
1462 } // namespace gpu 1475 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/gles2_cmd_decoder_unittest.cc ('k') | gpu/command_buffer/service/test_helper.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698