Index: content/browser/gpu/gpu_data_manager_impl_private_unittest.cc |
diff --git a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc |
index 0a239f3dc842c3d6c51774f836feed73e4989856..81319e6cad8deeba2510153c4274336d6a43382e 100644 |
--- a/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc |
+++ b/content/browser/gpu/gpu_data_manager_impl_private_unittest.cc |
@@ -11,6 +11,8 @@ |
#include "base/time/time.h" |
#include "build/build_config.h" |
#include "content/browser/gpu/gpu_data_manager_impl_private.h" |
+#include "content/browser/gpu/gpu_data_manager_testing_autogen.h" |
+#include "content/browser/gpu/gpu_data_manager_testing_entry_enums_autogen.h" |
#include "content/public/browser/gpu_data_manager_observer.h" |
#include "gpu/config/gpu_feature_type.h" |
#include "gpu/config/gpu_info.h" |
@@ -74,8 +76,7 @@ static GURL GetDomain2ForTesting() { |
class GpuDataManagerImplPrivateTest : public testing::Test { |
public: |
- GpuDataManagerImplPrivateTest() { } |
- |
+ GpuDataManagerImplPrivateTest() {} |
~GpuDataManagerImplPrivateTest() override {} |
protected: |
@@ -150,32 +151,18 @@ TEST_F(GpuDataManagerImplPrivateTest, GpuSideBlacklisting) { |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
EXPECT_TRUE(reason.empty()); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "features": [ |
- "accelerated_webgl" |
- ] |
- }, |
- { |
- "id": 2, |
- "gl_renderer": ".*GeForce.*", |
- "features": [ |
- "accelerated_2d_canvas" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_GpuSideBlacklisting_0], |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_GpuSideBlacklisting_1], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 2, kEntries); |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x10de; |
gpu_info.gpu.device_id = 0x0640; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
EXPECT_TRUE(reason.empty()); |
@@ -220,33 +207,18 @@ TEST_F(GpuDataManagerImplPrivateTest, GpuSideBlacklistingWebGL) { |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
EXPECT_TRUE(reason.empty()); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "features": [ |
- "accelerated_2d_canvas" |
- ] |
- }, |
- { |
- "id": 2, |
- "gl_renderer": ".*GeForce.*", |
- "features": [ |
- "accelerated_webgl", |
- "webgl2" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_GpuSideBlacklistingWebGL_0], |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_GpuSideBlacklistingWebGL_1], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 2, kEntries); |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x10de; |
gpu_info.gpu.device_id = 0x0640; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
EXPECT_TRUE(reason.empty()); |
@@ -282,29 +254,16 @@ TEST_F(GpuDataManagerImplPrivateTest, GpuSideExceptions) { |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "exceptions": [ |
- { |
- "gl_renderer": ".*GeForce.*" |
- } |
- ], |
- "features": [ |
- "accelerated_webgl" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_GpuSideException], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
+ |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x10de; |
gpu_info.gpu.device_id = 0x0640; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
EXPECT_EQ(manager->ShouldUseSwiftShader() |
@@ -326,7 +285,8 @@ TEST_F(GpuDataManagerImplPrivateTest, GpuSideExceptions) { |
TEST_F(GpuDataManagerImplPrivateTest, DisableHardwareAcceleration) { |
ScopedGpuDataManagerImplPrivate manager; |
- manager->InitializeForTesting("", gpu::GPUInfo()); |
+ const gpu::GpuControlListData kData; |
+ manager->InitializeForTesting(kData, gpu::GPUInfo()); |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
std::string reason; |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
@@ -347,7 +307,8 @@ TEST_F(GpuDataManagerImplPrivateTest, DisableHardwareAcceleration) { |
TEST_F(GpuDataManagerImplPrivateTest, SwiftShaderRendering) { |
// Blacklist, then register SwiftShader. |
ScopedGpuDataManagerImplPrivate manager; |
- manager->InitializeForTesting("", gpu::GPUInfo()); |
+ const gpu::GpuControlListData kData; |
+ manager->InitializeForTesting(kData, gpu::GPUInfo()); |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
EXPECT_FALSE(manager->ShouldUseSwiftShader()); |
@@ -364,7 +325,8 @@ TEST_F(GpuDataManagerImplPrivateTest, SwiftShaderRendering) { |
TEST_F(GpuDataManagerImplPrivateTest, SwiftShaderRendering2) { |
// Register SwiftShader, then blacklist. |
ScopedGpuDataManagerImplPrivate manager; |
- manager->InitializeForTesting("", gpu::GPUInfo()); |
+ const gpu::GpuControlListData kData; |
+ manager->InitializeForTesting(kData, gpu::GPUInfo()); |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
EXPECT_FALSE(manager->ShouldUseSwiftShader()); |
@@ -405,7 +367,8 @@ TEST_F(GpuDataManagerImplPrivateTest, GpuInfoUpdate) { |
TEST_F(GpuDataManagerImplPrivateTest, NoGpuInfoUpdateWithSwiftShader) { |
ScopedGpuDataManagerImpl manager; |
- manager->InitializeForTesting("", gpu::GPUInfo()); |
+ const gpu::GpuControlListData kData; |
+ manager->InitializeForTesting(kData, gpu::GPUInfo()); |
manager->DisableHardwareAcceleration(); |
if (manager->ShouldUseSwiftShader()) { |
@@ -594,34 +557,16 @@ TEST_F(GpuDataManagerImplPrivateTest, SetGLStrings) { |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "vendor_id": "0x8086", |
- "exceptions": [ |
- { |
- "device_id": ["0x0042"], |
- "driver_version": { |
- "op": ">=", |
- "value": "8.0.2" |
- } |
- } |
- ], |
- "features": [ |
- "accelerated_webgl" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_SetGLStrings], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
+ |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x8086; |
gpu_info.gpu.device_id = 0x0042; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
// Not enough GPUInfo. |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
@@ -648,30 +593,12 @@ TEST_F(GpuDataManagerImplPrivateTest, SetGLStringsNoEffects) { |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "vendor_id": "0x8086", |
- "exceptions": [ |
- { |
- "device_id": ["0x0042"], |
- "driver_version": { |
- "op": ">=", |
- "value": "8.0.2" |
- } |
- } |
- ], |
- "features": [ |
- "accelerated_webgl" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_SetGLStringsNoEffects], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
+ |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x8086; |
gpu_info.gpu.device_id = 0x0042; |
@@ -680,7 +607,7 @@ TEST_F(GpuDataManagerImplPrivateTest, SetGLStringsNoEffects) { |
gpu_info.gl_version = kGLVersionMesa801; |
gpu_info.driver_vendor = "Mesa"; |
gpu_info.driver_version = "8.0.1"; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
// Full GPUInfo, the entry applies. |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
@@ -707,18 +634,11 @@ TEST_F(GpuDataManagerImplPrivateTest, SetGLStringsDefered) { |
EXPECT_EQ(0u, manager->GetBlacklistedFeatureCount()); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
- const std::string blacklist_json = LONG_STRING_CONST({ |
- "name" : "gpu blacklist", |
- "version" : "0.1", |
- "entries" : [ { |
- "id" : 1, |
- "vendor_id" : "0x8086", |
- "device_id" : ["0x0042"], |
- "driver_vendor" : "Mesa", |
- "driver_version" : {"op" : ">=", "value" : "8.0.0"}, |
- "features" : ["accelerated_webgl"] |
- } ] |
- }); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_SetGLStringsDefered], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
// Check that it is allowed to call SetGLStrings before Initialize. |
@@ -728,7 +648,7 @@ TEST_F(GpuDataManagerImplPrivateTest, SetGLStringsDefered) { |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x8086; |
gpu_info.gpu.device_id = 0x0042; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
EXPECT_TRUE(manager->GpuAccessAllowed(NULL)); |
EXPECT_EQ(1u, manager->GetBlacklistedFeatureCount()); |
@@ -771,25 +691,16 @@ TEST_F(GpuDataManagerImplPrivateTest, BlacklistAllFeatures) { |
EXPECT_TRUE(manager->GpuAccessAllowed(&reason)); |
EXPECT_TRUE(reason.empty()); |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "features": [ |
- "all" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_BlacklistAllFeatures], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
gpu::GPUInfo gpu_info; |
gpu_info.gpu.vendor_id = 0x10de; |
gpu_info.gpu.device_id = 0x0640; |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
EXPECT_EQ(static_cast<size_t>(gpu::NUMBER_OF_GPU_FEATURE_TYPES), |
manager->GetBlacklistedFeatureCount()); |
@@ -802,22 +713,11 @@ TEST_F(GpuDataManagerImplPrivateTest, BlacklistAllFeatures) { |
TEST_F(GpuDataManagerImplPrivateTest, UpdateActiveGpu) { |
ScopedGpuDataManagerImpl manager; |
- const std::string blacklist_json = LONG_STRING_CONST( |
- { |
- "name": "gpu blacklist", |
- "version": "0.1", |
- "entries": [ |
- { |
- "id": 1, |
- "vendor_id": "0x8086", |
- "multi_gpu_category": "active", |
- "features": [ |
- "accelerated_webgl" |
- ] |
- } |
- ] |
- } |
- ); |
+ const gpu::GpuControlList::Entry kEntries[] = { |
+ gpu::kGpuDataManagerTestingEntries |
+ [gpu::kGpuDataManagerImplPrivateTest_UpdateActiveGpu], |
+ }; |
+ const gpu::GpuControlListData kData("1.0", 1, kEntries); |
// Two GPUs, the secondary Intel GPU is active. |
gpu::GPUInfo gpu_info; |
@@ -830,7 +730,7 @@ TEST_F(GpuDataManagerImplPrivateTest, UpdateActiveGpu) { |
intel_gpu.active = true; |
gpu_info.secondary_gpus.push_back(intel_gpu); |
- manager->InitializeForTesting(blacklist_json, gpu_info); |
+ manager->InitializeForTesting(kData, gpu_info); |
TestObserver observer; |
manager->AddObserver(&observer); |