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

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

Issue 169403005: command_buffer: Implement path rendering functions for CHROMIUM_path_rendering (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@nv-pr-02-texgen
Patch Set: fix windows build Created 5 years, 5 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"
11 #include "gpu/command_buffer/service/gpu_switches.h"
11 #include "gpu/command_buffer/service/test_helper.h" 12 #include "gpu/command_buffer/service/test_helper.h"
12 #include "gpu/command_buffer/service/texture_manager.h" 13 #include "gpu/command_buffer/service/texture_manager.h"
13 #include "gpu/config/gpu_driver_bug_workaround_type.h" 14 #include "gpu/config/gpu_driver_bug_workaround_type.h"
14 #include "gpu/config/gpu_switches.h" 15 #include "gpu/config/gpu_switches.h"
15 #include "testing/gtest/include/gtest/gtest.h" 16 #include "testing/gtest/include/gtest/gtest.h"
16 #include "ui/gl/gl_fence.h" 17 #include "ui/gl/gl_fence.h"
17 #include "ui/gl/gl_implementation.h" 18 #include "ui/gl/gl_implementation.h"
18 #include "ui/gl/gl_mock.h" 19 #include "ui/gl/gl_mock.h"
19 20
20 using ::testing::_; 21 using ::testing::_;
(...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after
70 71
71 void SetupInitExpectationsWithGLVersion( 72 void SetupInitExpectationsWithGLVersion(
72 const char* extensions, const char* renderer, const char* version) { 73 const char* extensions, const char* renderer, const char* version) {
73 GpuServiceTest::SetUpWithGLVersion(version, extensions); 74 GpuServiceTest::SetUpWithGLVersion(version, extensions);
74 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion( 75 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion(
75 gl_.get(), extensions, renderer, version); 76 gl_.get(), extensions, renderer, version);
76 info_ = new FeatureInfo(); 77 info_ = new FeatureInfo();
77 info_->Initialize(); 78 info_->Initialize();
78 } 79 }
79 80
81 void SetupInitExpectationsWithGLVersionAndCommandLine(
82 const char* extensions,
83 const char* renderer,
84 const char* version,
85 const base::CommandLine& command_line) {
86 GpuServiceTest::SetUpWithGLVersion(version, extensions);
87 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion(
88 gl_.get(), extensions, renderer, version);
89 info_ = new FeatureInfo(command_line);
90 info_->Initialize();
91 }
92
80 void SetupWithCommandLine(const base::CommandLine& command_line) { 93 void SetupWithCommandLine(const base::CommandLine& command_line) {
81 GpuServiceTest::SetUp(); 94 GpuServiceTest::SetUp();
82 info_ = new FeatureInfo(command_line); 95 info_ = new FeatureInfo(command_line);
83 } 96 }
84 97
85 void SetupInitExpectationsWithCommandLine( 98 void SetupInitExpectationsWithCommandLine(
86 const char* extensions, 99 const char* extensions,
87 const base::CommandLine& command_line) { 100 const base::CommandLine& command_line) {
88 GpuServiceTest::SetUpWithGLVersion("2.0", extensions); 101 GpuServiceTest::SetUpWithGLVersion("2.0", extensions);
89 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion( 102 TestHelper::SetupFeatureInfoInitExpectationsWithGLVersion(
(...skipping 1094 matching lines...) Expand 10 before | Expand all | Expand 10 after
1184 command_line.AppendSwitchASCII( 1197 command_line.AppendSwitchASCII(
1185 switches::kGpuDriverBugWorkarounds, 1198 switches::kGpuDriverBugWorkarounds,
1186 base::IntToString(gpu::DISABLE_BLEND_EQUATION_ADVANCED)); 1199 base::IntToString(gpu::DISABLE_BLEND_EQUATION_ADVANCED));
1187 SetupInitExpectationsWithCommandLine( 1200 SetupInitExpectationsWithCommandLine(
1188 "GL_KHR_blend_equation_advanced_coherent GL_KHR_blend_equation_advanced", 1201 "GL_KHR_blend_equation_advanced_coherent GL_KHR_blend_equation_advanced",
1189 command_line); 1202 command_line);
1190 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced); 1203 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced);
1191 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced_coherent); 1204 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced_coherent);
1192 } 1205 }
1193 1206
1194 TEST_P(FeatureInfoTest, InitializeCHROMIUM_path_rendering) { 1207 TEST_P(FeatureInfoTest, InitializeCHROMIUM_path_rendering_no_cmdline_switch) {
1195 SetupInitExpectationsWithGLVersion( 1208 SetupInitExpectationsWithGLVersion(
1196 "GL_ARB_compatibility GL_NV_path_rendering GL_EXT_direct_state_access", 1209 "GL_ARB_compatibility GL_NV_path_rendering GL_EXT_direct_state_access",
1197 "", "4.3"); 1210 "", "4.3");
1211 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering);
1212 EXPECT_THAT(info_->extensions(),
1213 Not(HasSubstr("GL_CHROMIUM_path_rendering")));
1214 }
1215
1216 TEST_P(FeatureInfoTest, InitializeCHROMIUM_path_rendering) {
1217 base::CommandLine command_line(0, NULL);
1218 command_line.AppendSwitch(switches::kEnableGLPathRendering);
1219 SetupInitExpectationsWithGLVersionAndCommandLine(
1220 "GL_ARB_compatibility GL_NV_path_rendering GL_EXT_direct_state_access",
1221 "", "4.3", command_line);
1198 EXPECT_TRUE(info_->feature_flags().chromium_path_rendering); 1222 EXPECT_TRUE(info_->feature_flags().chromium_path_rendering);
1199 EXPECT_THAT(info_->extensions(), HasSubstr("GL_CHROMIUM_path_rendering")); 1223 EXPECT_THAT(info_->extensions(), HasSubstr("GL_CHROMIUM_path_rendering"));
1200 } 1224 }
1201 1225
1202 TEST_P(FeatureInfoTest, InitializeCHROMIUM_path_rendering2) { 1226 TEST_P(FeatureInfoTest, InitializeCHROMIUM_path_rendering2) {
1203 SetupInitExpectationsWithGLVersion( 1227 base::CommandLine command_line(0, NULL);
1204 "GL_NV_path_rendering", "", "OpenGL ES 3.1"); 1228 command_line.AppendSwitch(switches::kEnableGLPathRendering);
1229 SetupInitExpectationsWithGLVersionAndCommandLine(
1230 "GL_NV_path_rendering", "", "OpenGL ES 3.1", command_line);
1205 EXPECT_TRUE(info_->feature_flags().chromium_path_rendering); 1231 EXPECT_TRUE(info_->feature_flags().chromium_path_rendering);
1206 EXPECT_THAT(info_->extensions(), HasSubstr("GL_CHROMIUM_path_rendering")); 1232 EXPECT_THAT(info_->extensions(), HasSubstr("GL_CHROMIUM_path_rendering"));
1207 } 1233 }
1208 1234
1209 TEST_P(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering) { 1235 TEST_P(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering) {
1210 SetupInitExpectationsWithGLVersion("GL_ARB_compatibility", "", "4.3"); 1236 base::CommandLine command_line(0, NULL);
1237 command_line.AppendSwitch(switches::kEnableGLPathRendering);
1238 SetupInitExpectationsWithGLVersionAndCommandLine("GL_ARB_compatibility", "",
1239 "4.3", command_line);
1211 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering); 1240 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering);
1212 EXPECT_THAT(info_->extensions(), 1241 EXPECT_THAT(info_->extensions(),
1213 Not(HasSubstr("GL_CHROMIUM_path_rendering"))); 1242 Not(HasSubstr("GL_CHROMIUM_path_rendering")));
1214 } 1243 }
1215 1244
1216 TEST_P(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering2) { 1245 TEST_P(FeatureInfoTest, InitializeNoCHROMIUM_path_rendering2) {
1217 SetupInitExpectationsWithGLVersion( 1246 base::CommandLine command_line(0, NULL);
1218 "GL_ARB_compatibility GL_NV_path_rendering", "", "4.3"); 1247 command_line.AppendSwitch(switches::kEnableGLPathRendering);
1248 SetupInitExpectationsWithGLVersionAndCommandLine(
1249 "GL_ARB_compatibility GL_NV_path_rendering", "", "4.3", command_line);
1219 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering); 1250 EXPECT_FALSE(info_->feature_flags().chromium_path_rendering);
1220 EXPECT_THAT(info_->extensions(), 1251 EXPECT_THAT(info_->extensions(),
1221 Not(HasSubstr("GL_CHROMIUM_path_rendering"))); 1252 Not(HasSubstr("GL_CHROMIUM_path_rendering")));
1222 } 1253 }
1223 1254
1224 TEST_P(FeatureInfoTest, InitializeNoKHR_blend_equation_advanced) { 1255 TEST_P(FeatureInfoTest, InitializeNoKHR_blend_equation_advanced) {
1225 SetupInitExpectationsWithGLVersion("GL_ARB_compatibility", "", "4.3"); 1256 SetupInitExpectationsWithGLVersion("GL_ARB_compatibility", "", "4.3");
1226 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced); 1257 EXPECT_FALSE(info_->feature_flags().blend_equation_advanced);
1227 EXPECT_THAT(info_->extensions(), 1258 EXPECT_THAT(info_->extensions(),
1228 Not(HasSubstr("GL_KHR_blend_equation_advanced"))); 1259 Not(HasSubstr("GL_KHR_blend_equation_advanced")));
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
1279 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RED_EXT)); 1310 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RED_EXT));
1280 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RG_EXT)); 1311 EXPECT_TRUE(info_->validators()->texture_internal_format.IsValid(GL_RG_EXT));
1281 EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RED_EXT)); 1312 EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RED_EXT));
1282 EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RG_EXT)); 1313 EXPECT_TRUE(info_->validators()->read_pixel_format.IsValid(GL_RG_EXT));
1283 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_R8_EXT)); 1314 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_R8_EXT));
1284 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT)); 1315 EXPECT_TRUE(info_->validators()->render_buffer_format.IsValid(GL_RG8_EXT));
1285 } 1316 }
1286 1317
1287 } // namespace gles2 1318 } // namespace gles2
1288 } // namespace gpu 1319 } // 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