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

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

Issue 640283003: Use NV_draw_buffers to implement EXT_draw_buffers (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@lkgr
Patch Set: Added explanation of nv_draw_buffers flag to feature_info.cc Created 6 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/feature_info.h" 5 #include "gpu/command_buffer/service/feature_info.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/strings/string_number_conversions.h" 9 #include "base/strings/string_number_conversions.h"
10 #include "gpu/command_buffer/service/gpu_service_test.h" 10 #include "gpu/command_buffer/service/gpu_service_test.h"
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
116 EXPECT_FALSE(info_->feature_flags().arb_texture_rectangle); 116 EXPECT_FALSE(info_->feature_flags().arb_texture_rectangle);
117 EXPECT_FALSE(info_->feature_flags().angle_instanced_arrays); 117 EXPECT_FALSE(info_->feature_flags().angle_instanced_arrays);
118 EXPECT_FALSE(info_->feature_flags().occlusion_query_boolean); 118 EXPECT_FALSE(info_->feature_flags().occlusion_query_boolean);
119 EXPECT_FALSE(info_->feature_flags( 119 EXPECT_FALSE(info_->feature_flags(
120 ).use_arb_occlusion_query2_for_occlusion_query_boolean); 120 ).use_arb_occlusion_query2_for_occlusion_query_boolean);
121 EXPECT_FALSE(info_->feature_flags( 121 EXPECT_FALSE(info_->feature_flags(
122 ).use_arb_occlusion_query_for_occlusion_query_boolean); 122 ).use_arb_occlusion_query_for_occlusion_query_boolean);
123 EXPECT_FALSE(info_->feature_flags().native_vertex_array_object); 123 EXPECT_FALSE(info_->feature_flags().native_vertex_array_object);
124 EXPECT_FALSE(info_->feature_flags().map_buffer_range); 124 EXPECT_FALSE(info_->feature_flags().map_buffer_range);
125 EXPECT_FALSE(info_->feature_flags().use_async_readpixels); 125 EXPECT_FALSE(info_->feature_flags().use_async_readpixels);
126 EXPECT_FALSE(info_->feature_flags().ext_draw_buffers);
127 EXPECT_FALSE(info_->feature_flags().nv_draw_buffers);
126 EXPECT_FALSE(info_->feature_flags().ext_discard_framebuffer); 128 EXPECT_FALSE(info_->feature_flags().ext_discard_framebuffer);
127 EXPECT_FALSE(info_->feature_flags().angle_depth_texture); 129 EXPECT_FALSE(info_->feature_flags().angle_depth_texture);
128 EXPECT_FALSE(info_->feature_flags().is_angle); 130 EXPECT_FALSE(info_->feature_flags().is_angle);
129 131
130 #define GPU_OP(type, name) EXPECT_FALSE(info_->workarounds().name); 132 #define GPU_OP(type, name) EXPECT_FALSE(info_->workarounds().name);
131 GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP) 133 GPU_DRIVER_BUG_WORKAROUNDS(GPU_OP)
132 #undef GPU_OP 134 #undef GPU_OP
133 EXPECT_EQ(0, info_->workarounds().max_texture_size); 135 EXPECT_EQ(0, info_->workarounds().max_texture_size);
134 EXPECT_EQ(0, info_->workarounds().max_cube_map_texture_size); 136 EXPECT_EQ(0, info_->workarounds().max_cube_map_texture_size);
135 137
(...skipping 1111 matching lines...) Expand 10 before | Expand all | Expand 10 after
1247 EXPECT_TRUE(info_->feature_flags().chromium_sync_query); 1249 EXPECT_TRUE(info_->feature_flags().chromium_sync_query);
1248 EXPECT_TRUE(gfx::GLFence::IsSupported()); 1250 EXPECT_TRUE(gfx::GLFence::IsSupported());
1249 } 1251 }
1250 1252
1251 TEST_F(FeatureInfoTest, InitializeWithNVFence) { 1253 TEST_F(FeatureInfoTest, InitializeWithNVFence) {
1252 SetupInitExpectations("GL_NV_fence"); 1254 SetupInitExpectations("GL_NV_fence");
1253 EXPECT_TRUE(info_->feature_flags().chromium_sync_query); 1255 EXPECT_TRUE(info_->feature_flags().chromium_sync_query);
1254 EXPECT_TRUE(gfx::GLFence::IsSupported()); 1256 EXPECT_TRUE(gfx::GLFence::IsSupported());
1255 } 1257 }
1256 1258
1259 TEST_F(FeatureInfoTest, InitializeWithNVDrawBuffers) {
1260 SetupInitExpectationsWithGLVersion("GL_NV_draw_buffers", "", "OpenGL ES 3.0");
1261 EXPECT_TRUE(info_->feature_flags().nv_draw_buffers);
1262 EXPECT_TRUE(info_->feature_flags().ext_draw_buffers);
1263 }
1264
1265 TEST_F(FeatureInfoTest, InitializeWithPreferredEXTDrawBuffers) {
1266 SetupInitExpectationsWithGLVersion(
1267 "GL_NV_draw_buffers GL_EXT_draw_buffers", "", "OpenGL ES 3.0");
1268 EXPECT_FALSE(info_->feature_flags().nv_draw_buffers);
1269 EXPECT_TRUE(info_->feature_flags().ext_draw_buffers);
1270 }
1271
1257 TEST_F(FeatureInfoTest, ARBSyncDisabled) { 1272 TEST_F(FeatureInfoTest, ARBSyncDisabled) {
1258 CommandLine command_line(0, NULL); 1273 CommandLine command_line(0, NULL);
1259 command_line.AppendSwitchASCII( 1274 command_line.AppendSwitchASCII(
1260 switches::kGpuDriverBugWorkarounds, 1275 switches::kGpuDriverBugWorkarounds,
1261 base::IntToString(gpu::DISABLE_ARB_SYNC)); 1276 base::IntToString(gpu::DISABLE_ARB_SYNC));
1262 SetupInitExpectationsWithCommandLine("GL_ARB_sync", command_line); 1277 SetupInitExpectationsWithCommandLine("GL_ARB_sync", command_line);
1263 EXPECT_FALSE(info_->feature_flags().chromium_sync_query); 1278 EXPECT_FALSE(info_->feature_flags().chromium_sync_query);
1264 EXPECT_FALSE(gfx::GLFence::IsSupported()); 1279 EXPECT_FALSE(gfx::GLFence::IsSupported());
1265 } 1280 }
1266 1281
(...skipping 20 matching lines...) Expand all
1287 1302
1288 TEST_F(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering2) { 1303 TEST_F(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering2) {
1289 SetupInitExpectationsWithGLVersion("GL_NV_path_rendering", "", "4.3"); 1304 SetupInitExpectationsWithGLVersion("GL_NV_path_rendering", "", "4.3");
1290 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering); 1305 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering);
1291 EXPECT_THAT(info_->extensions(), 1306 EXPECT_THAT(info_->extensions(),
1292 Not(HasSubstr("GL_CHROMIUM_path_rendering"))); 1307 Not(HasSubstr("GL_CHROMIUM_path_rendering")));
1293 } 1308 }
1294 1309
1295 } // namespace gles2 1310 } // namespace gles2
1296 } // namespace gpu 1311 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/command_buffer/service/feature_info.cc ('k') | gpu/command_buffer/service/gles2_cmd_decoder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698