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

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

Issue 2410343002: [Reland] Add gl tests to make sure when a buffer is unmapped, all access path generates an INVALID_… (Closed)
Patch Set: Skip the test if context creation fails. Created 4 years, 2 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/program_manager.h" 5 #include "gpu/command_buffer/service/program_manager.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <algorithm> 10 #include <algorithm>
(...skipping 2089 matching lines...) Expand 10 before | Expand all | Expand 10 after
2100 ProgramManagerTestBase::TearDown(); 2100 ProgramManagerTestBase::TearDown();
2101 } 2101 }
2102 2102
2103 void SetShadersCompiled() { 2103 void SetShadersCompiled() {
2104 TestHelper::SetShaderStates(gl_.get(), vertex_shader_, true); 2104 TestHelper::SetShaderStates(gl_.get(), vertex_shader_, true);
2105 TestHelper::SetShaderStates(gl_.get(), fragment_shader_, true); 2105 TestHelper::SetShaderStates(gl_.get(), fragment_shader_, true);
2106 } 2106 }
2107 2107
2108 void SetProgramCached() { 2108 void SetProgramCached() {
2109 cache_->LinkedProgramCacheSuccess( 2109 cache_->LinkedProgramCacheSuccess(
2110 vertex_shader_->source(), 2110 vertex_shader_->source(), fragment_shader_->source(),
2111 fragment_shader_->source(),
2112 &program_->bind_attrib_location_map(), 2111 &program_->bind_attrib_location_map(),
2113 program_->transform_feedback_varyings(), 2112 program_->effective_transform_feedback_varyings(),
2114 program_->transform_feedback_buffer_mode()); 2113 program_->effective_transform_feedback_buffer_mode());
2115 } 2114 }
2116 2115
2117 void SetExpectationsForProgramCached() { 2116 void SetExpectationsForProgramCached() {
2118 SetExpectationsForProgramCached(program_, 2117 SetExpectationsForProgramCached(program_,
2119 vertex_shader_, 2118 vertex_shader_,
2120 fragment_shader_); 2119 fragment_shader_);
2121 } 2120 }
2122 2121
2123 void SetExpectationsForProgramCached( 2122 void SetExpectationsForProgramCached(
2124 Program* program, 2123 Program* program,
2125 Shader* vertex_shader, 2124 Shader* vertex_shader,
2126 Shader* fragment_shader) { 2125 Shader* fragment_shader) {
2127 EXPECT_CALL(*cache_.get(), SaveLinkedProgram( 2126 EXPECT_CALL(*cache_.get(),
2128 program->service_id(), 2127 SaveLinkedProgram(
2129 vertex_shader, 2128 program->service_id(), vertex_shader, fragment_shader,
2130 fragment_shader, 2129 &program->bind_attrib_location_map(),
2131 &program->bind_attrib_location_map(), 2130 program_->effective_transform_feedback_varyings(),
2132 program_->transform_feedback_varyings(), 2131 program_->effective_transform_feedback_buffer_mode(), _))
2133 program_->transform_feedback_buffer_mode(), 2132 .Times(1);
2134 _)).Times(1);
2135 } 2133 }
2136 2134
2137 void SetExpectationsForNotCachingProgram() { 2135 void SetExpectationsForNotCachingProgram() {
2138 SetExpectationsForNotCachingProgram(program_, 2136 SetExpectationsForNotCachingProgram(program_,
2139 vertex_shader_, 2137 vertex_shader_,
2140 fragment_shader_); 2138 fragment_shader_);
2141 } 2139 }
2142 2140
2143 void SetExpectationsForNotCachingProgram( 2141 void SetExpectationsForNotCachingProgram(
2144 Program* program, 2142 Program* program,
2145 Shader* vertex_shader, 2143 Shader* vertex_shader,
2146 Shader* fragment_shader) { 2144 Shader* fragment_shader) {
2147 EXPECT_CALL(*cache_.get(), SaveLinkedProgram( 2145 EXPECT_CALL(*cache_.get(),
2148 program->service_id(), 2146 SaveLinkedProgram(
2149 vertex_shader, 2147 program->service_id(), vertex_shader, fragment_shader,
2150 fragment_shader, 2148 &program->bind_attrib_location_map(),
2151 &program->bind_attrib_location_map(), 2149 program_->effective_transform_feedback_varyings(),
2152 program_->transform_feedback_varyings(), 2150 program_->effective_transform_feedback_buffer_mode(), _))
2153 program_->transform_feedback_buffer_mode(), 2151 .Times(0);
2154 _)).Times(0);
2155 } 2152 }
2156 2153
2157 void SetExpectationsForProgramLoad(ProgramCache::ProgramLoadResult result) { 2154 void SetExpectationsForProgramLoad(ProgramCache::ProgramLoadResult result) {
2158 SetExpectationsForProgramLoad(kServiceProgramId, 2155 SetExpectationsForProgramLoad(kServiceProgramId,
2159 program_, 2156 program_,
2160 vertex_shader_, 2157 vertex_shader_,
2161 fragment_shader_, 2158 fragment_shader_,
2162 result); 2159 result);
2163 } 2160 }
2164 2161
2165 void SetExpectationsForProgramLoad( 2162 void SetExpectationsForProgramLoad(
2166 GLuint service_program_id, 2163 GLuint service_program_id,
2167 Program* program, 2164 Program* program,
2168 Shader* vertex_shader, 2165 Shader* vertex_shader,
2169 Shader* fragment_shader, 2166 Shader* fragment_shader,
2170 ProgramCache::ProgramLoadResult result) { 2167 ProgramCache::ProgramLoadResult result) {
2171 EXPECT_CALL(*cache_.get(), 2168 EXPECT_CALL(*cache_.get(),
2172 LoadLinkedProgram(service_program_id, 2169 LoadLinkedProgram(
2173 vertex_shader, 2170 service_program_id, vertex_shader, fragment_shader,
2174 fragment_shader, 2171 &program->bind_attrib_location_map(),
2175 &program->bind_attrib_location_map(), 2172 program_->effective_transform_feedback_varyings(),
2176 program_->transform_feedback_varyings(), 2173 program_->effective_transform_feedback_buffer_mode(), _))
2177 program_->transform_feedback_buffer_mode(),
2178 _))
2179 .WillOnce(Return(result)); 2174 .WillOnce(Return(result));
2180 } 2175 }
2181 2176
2182 void SetExpectationsForProgramLoadSuccess() { 2177 void SetExpectationsForProgramLoadSuccess() {
2183 SetExpectationsForProgramLoadSuccess(kServiceProgramId); 2178 SetExpectationsForProgramLoadSuccess(kServiceProgramId);
2184 } 2179 }
2185 2180
2186 void SetExpectationsForProgramLoadSuccess(GLuint service_program_id) { 2181 void SetExpectationsForProgramLoadSuccess(GLuint service_program_id) {
2187 TestHelper::SetupProgramSuccessExpectations( 2182 TestHelper::SetupProgramSuccessExpectations(
2188 gl_.get(), feature_info_.get(), nullptr, 0, nullptr, 0, nullptr, 0, 2183 gl_.get(), feature_info_.get(), nullptr, 0, nullptr, 0, nullptr, 0,
(...skipping 329 matching lines...) Expand 10 before | Expand all | Expand 10 after
2518 ProgramManagerDualSourceBlendingES2Test, 2513 ProgramManagerDualSourceBlendingES2Test,
2519 testing::Values( 2514 testing::Values(
2520 make_gl_ext_tuple("3.2", 2515 make_gl_ext_tuple("3.2",
2521 "GL_ARB_draw_buffers GL_ARB_blend_func_extended " 2516 "GL_ARB_draw_buffers GL_ARB_blend_func_extended "
2522 "GL_ARB_program_interface_query"), 2517 "GL_ARB_program_interface_query"),
2523 make_gl_ext_tuple("opengl es 3.1", 2518 make_gl_ext_tuple("opengl es 3.1",
2524 "GL_EXT_draw_buffers GL_EXT_blend_func_extended"))); 2519 "GL_EXT_draw_buffers GL_EXT_blend_func_extended")));
2525 2520
2526 } // namespace gles2 2521 } // namespace gles2
2527 } // namespace gpu 2522 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/program_manager.cc ('k') | gpu/command_buffer/service/transform_feedback_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698