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

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

Issue 1309743005: command_buffer: Implement EXT_blend_func_extended (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@new-05-path-fragment-input-gen
Patch Set: ~ Created 5 years, 3 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/test_helper.h" 5 #include "gpu/command_buffer/service/test_helper.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <string> 8 #include <string>
9 9
10 #include "base/strings/string_number_conversions.h" 10 #include "base/strings/string_number_conversions.h"
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
285 strstr(extensions, "GL_EXT_multisampled_render_to_texture") || 285 strstr(extensions, "GL_EXT_multisampled_render_to_texture") ||
286 gl_info.is_es3) { 286 gl_info.is_es3) {
287 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_SAMPLES, _)) 287 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_SAMPLES, _))
288 .WillOnce(SetArgumentPointee<1>(kMaxSamples)) 288 .WillOnce(SetArgumentPointee<1>(kMaxSamples))
289 .RetiresOnSaturation(); 289 .RetiresOnSaturation();
290 } else if (strstr(extensions, "GL_IMG_multisampled_render_to_texture")) { 290 } else if (strstr(extensions, "GL_IMG_multisampled_render_to_texture")) {
291 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_SAMPLES_IMG, _)) 291 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_SAMPLES_IMG, _))
292 .WillOnce(SetArgumentPointee<1>(kMaxSamples)) 292 .WillOnce(SetArgumentPointee<1>(kMaxSamples))
293 .RetiresOnSaturation(); 293 .RetiresOnSaturation();
294 } 294 }
295
296 if (gl_info.IsAtLeastGL(3, 3) ||
297 (gl_info.IsAtLeastGL(3, 2) &&
298 strstr(extensions, "GL_ARB_blend_func_extended")) ||
299 (gl_info.is_es && strstr(extensions, "GL_EXT_blend_func_extended"))) {
300 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_DUAL_SOURCE_DRAW_BUFFERS_EXT, _))
301 .WillOnce(SetArgumentPointee<1>(8))
302 .RetiresOnSaturation();
303 }
304
295 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_VERTEX_ATTRIBS, _)) 305 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_VERTEX_ATTRIBS, _))
296 .WillOnce(SetArgumentPointee<1>(kNumVertexAttribs)) 306 .WillOnce(SetArgumentPointee<1>(kNumVertexAttribs))
297 .RetiresOnSaturation(); 307 .RetiresOnSaturation();
298 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, _)) 308 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS, _))
299 .WillOnce(SetArgumentPointee<1>(kNumTextureUnits)) 309 .WillOnce(SetArgumentPointee<1>(kNumTextureUnits))
300 .RetiresOnSaturation(); 310 .RetiresOnSaturation();
301 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_TEXTURE_SIZE, _)) 311 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_TEXTURE_SIZE, _))
302 .WillOnce(SetArgumentPointee<1>(kMaxTextureSize)) 312 .WillOnce(SetArgumentPointee<1>(kMaxTextureSize))
303 .RetiresOnSaturation(); 313 .RetiresOnSaturation();
304 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_CUBE_MAP_TEXTURE_SIZE, _)) 314 EXPECT_CALL(*gl, GetIntegerv(GL_MAX_CUBE_MAP_TEXTURE_SIZE, _))
(...skipping 536 matching lines...) Expand 10 before | Expand all | Expand 10 after
841 } else { 851 } else {
842 EXPECT_CALL(*error_state, SetGLErrorInvalidParami(_, _, error, _, _, _)) 852 EXPECT_CALL(*error_state, SetGLErrorInvalidParami(_, _, error, _, _, _))
843 .Times(1) 853 .Times(1)
844 .RetiresOnSaturation(); 854 .RetiresOnSaturation();
845 } 855 }
846 manager->SetParameteri("", error_state, texture_ref, pname, value); 856 manager->SetParameteri("", error_state, texture_ref, pname, value);
847 } 857 }
848 858
849 // static 859 // static
850 void TestHelper::SetShaderStates( 860 void TestHelper::SetShaderStates(
851 ::gfx::MockGLInterface* gl, Shader* shader, 861 ::gfx::MockGLInterface* gl,
852 bool expected_valid, 862 Shader* shader,
853 const std::string* const expected_log_info, 863 bool expected_valid,
854 const std::string* const expected_translated_source, 864 const std::string* const expected_log_info,
855 const int* const expected_shader_version, 865 const std::string* const expected_translated_source,
856 const AttributeMap* const expected_attrib_map, 866 const int* const expected_shader_version,
857 const UniformMap* const expected_uniform_map, 867 const AttributeMap* const expected_attrib_map,
858 const VaryingMap* const expected_varying_map, 868 const UniformMap* const expected_uniform_map,
859 const NameMap* const expected_name_map) { 869 const VaryingMap* const expected_varying_map,
870 const AttributeList* const expected_output_variable_list,
871 const NameMap* const expected_name_map) {
860 const std::string empty_log_info; 872 const std::string empty_log_info;
861 const std::string* log_info = (expected_log_info && !expected_valid) ? 873 const std::string* log_info = (expected_log_info && !expected_valid) ?
862 expected_log_info : &empty_log_info; 874 expected_log_info : &empty_log_info;
863 const std::string empty_translated_source; 875 const std::string empty_translated_source;
864 const std::string* translated_source = 876 const std::string* translated_source =
865 (expected_translated_source && expected_valid) ? 877 (expected_translated_source && expected_valid) ?
866 expected_translated_source : &empty_translated_source; 878 expected_translated_source : &empty_translated_source;
867 int default_shader_version = 100; 879 int default_shader_version = 100;
868 const int* shader_version = (expected_shader_version && expected_valid) ? 880 const int* shader_version = (expected_shader_version && expected_valid) ?
869 expected_shader_version : &default_shader_version; 881 expected_shader_version : &default_shader_version;
870 const AttributeMap empty_attrib_map; 882 const AttributeMap empty_attrib_map;
871 const AttributeMap* attrib_map = (expected_attrib_map && expected_valid) ? 883 const AttributeMap* attrib_map = (expected_attrib_map && expected_valid) ?
872 expected_attrib_map : &empty_attrib_map; 884 expected_attrib_map : &empty_attrib_map;
873 const UniformMap empty_uniform_map; 885 const UniformMap empty_uniform_map;
874 const UniformMap* uniform_map = (expected_uniform_map && expected_valid) ? 886 const UniformMap* uniform_map = (expected_uniform_map && expected_valid) ?
875 expected_uniform_map : &empty_uniform_map; 887 expected_uniform_map : &empty_uniform_map;
876 const VaryingMap empty_varying_map; 888 const VaryingMap empty_varying_map;
877 const VaryingMap* varying_map = (expected_varying_map && expected_valid) ? 889 const VaryingMap* varying_map = (expected_varying_map && expected_valid) ?
878 expected_varying_map : &empty_varying_map; 890 expected_varying_map : &empty_varying_map;
891 const AttributeList empty_output_variable_list;
892 const AttributeList* output_variable_list =
893 (expected_output_variable_list && expected_valid)
894 ? expected_output_variable_list
895 : &empty_output_variable_list;
879 const NameMap empty_name_map; 896 const NameMap empty_name_map;
880 const NameMap* name_map = (expected_name_map && expected_valid) ? 897 const NameMap* name_map = (expected_name_map && expected_valid) ?
881 expected_name_map : &empty_name_map; 898 expected_name_map : &empty_name_map;
882 899
883 MockShaderTranslator* mock_translator = new MockShaderTranslator; 900 MockShaderTranslator* mock_translator = new MockShaderTranslator;
884 scoped_refptr<ShaderTranslatorInterface> translator(mock_translator); 901 scoped_refptr<ShaderTranslatorInterface> translator(mock_translator);
885 EXPECT_CALL(*mock_translator, Translate(_, 902 EXPECT_CALL(*mock_translator, Translate(_,
886 NotNull(), // log_info 903 NotNull(), // log_info
887 NotNull(), // translated_source 904 NotNull(), // translated_source
888 NotNull(), // shader_version 905 NotNull(), // shader_version
889 NotNull(), // attrib_map 906 NotNull(), // attrib_map
890 NotNull(), // uniform_map 907 NotNull(), // uniform_map
891 NotNull(), // varying_map 908 NotNull(), // varying_map
909 NotNull(), // output_variable_list
892 NotNull())) // name_map 910 NotNull())) // name_map
893 .WillOnce(DoAll(SetArgumentPointee<1>(*log_info), 911 .WillOnce(DoAll(SetArgumentPointee<1>(*log_info),
894 SetArgumentPointee<2>(*translated_source), 912 SetArgumentPointee<2>(*translated_source),
895 SetArgumentPointee<3>(*shader_version), 913 SetArgumentPointee<3>(*shader_version),
896 SetArgumentPointee<4>(*attrib_map), 914 SetArgumentPointee<4>(*attrib_map),
897 SetArgumentPointee<5>(*uniform_map), 915 SetArgumentPointee<5>(*uniform_map),
898 SetArgumentPointee<6>(*varying_map), 916 SetArgumentPointee<6>(*varying_map),
899 SetArgumentPointee<7>(*name_map), 917 SetArgumentPointee<7>(*output_variable_list),
900 Return(expected_valid))) 918 SetArgumentPointee<8>(*name_map), Return(expected_valid)))
901 .RetiresOnSaturation(); 919 .RetiresOnSaturation();
902 if (expected_valid) { 920 if (expected_valid) {
903 EXPECT_CALL(*gl, ShaderSource(shader->service_id(), 1, _, NULL)) 921 EXPECT_CALL(*gl, ShaderSource(shader->service_id(), 1, _, NULL))
904 .Times(1) 922 .Times(1)
905 .RetiresOnSaturation(); 923 .RetiresOnSaturation();
906 EXPECT_CALL(*gl, CompileShader(shader->service_id())) 924 EXPECT_CALL(*gl, CompileShader(shader->service_id()))
907 .Times(1) 925 .Times(1)
908 .RetiresOnSaturation(); 926 .RetiresOnSaturation();
909 EXPECT_CALL(*gl, GetShaderiv(shader->service_id(), 927 EXPECT_CALL(*gl, GetShaderiv(shader->service_id(),
910 GL_COMPILE_STATUS, 928 GL_COMPILE_STATUS,
911 NotNull())) // status 929 NotNull())) // status
912 .WillOnce(SetArgumentPointee<2>(GL_TRUE)) 930 .WillOnce(SetArgumentPointee<2>(GL_TRUE))
913 .RetiresOnSaturation(); 931 .RetiresOnSaturation();
914 } 932 }
915 shader->RequestCompile(translator, Shader::kGL); 933 shader->RequestCompile(translator, Shader::kGL);
916 shader->DoCompile(); 934 shader->DoCompile();
917 } 935 }
918 936
919 // static 937 // static
920 void TestHelper::SetShaderStates( 938 void TestHelper::SetShaderStates(
921 ::gfx::MockGLInterface* gl, Shader* shader, bool valid) { 939 ::gfx::MockGLInterface* gl, Shader* shader, bool valid) {
922 SetShaderStates(gl, shader, valid, NULL, NULL, NULL, NULL, NULL, NULL, NULL); 940 SetShaderStates(gl, shader, valid, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
941 NULL);
923 } 942 }
924 943
925 // static 944 // static
926 sh::Attribute TestHelper::ConstructAttribute( 945 sh::Attribute TestHelper::ConstructAttribute(
927 GLenum type, GLint array_size, GLenum precision, 946 GLenum type, GLint array_size, GLenum precision,
928 bool static_use, const std::string& name) { 947 bool static_use, const std::string& name) {
929 return ConstructShaderVariable<sh::Attribute>( 948 return ConstructShaderVariable<sh::Attribute>(
930 type, array_size, precision, static_use, name); 949 type, array_size, precision, static_use, name);
931 } 950 }
932 951
(...skipping 19 matching lines...) Expand all
952 gfx::SetGLImplementation(implementation); 971 gfx::SetGLImplementation(implementation);
953 } 972 }
954 973
955 ScopedGLImplementationSetter::~ScopedGLImplementationSetter() { 974 ScopedGLImplementationSetter::~ScopedGLImplementationSetter() {
956 gfx::SetGLImplementation(old_implementation_); 975 gfx::SetGLImplementation(old_implementation_);
957 } 976 }
958 977
959 } // namespace gles2 978 } // namespace gles2
960 } // namespace gpu 979 } // namespace gpu
961 980
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698