Index: content/browser/gpu/gpu_blacklist_unittest.cc |
=================================================================== |
--- content/browser/gpu/gpu_blacklist_unittest.cc (revision 96607) |
+++ content/browser/gpu/gpu_blacklist_unittest.cc (working copy) |
@@ -57,7 +57,7 @@ |
data_file_size); |
std::string json_string(data.get(), data_file_size); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(json_string, true)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(json_string, true, false)); |
} |
TEST_F(GpuBlacklistTest, DeafaultBlacklistSettings) { |
@@ -81,7 +81,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(empty_list_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(empty_list_json, false, false)); |
uint16 major, minor; |
EXPECT_TRUE(blacklist.GetVersion(&major, &minor)); |
EXPECT_EQ(major, 2u); |
@@ -122,7 +122,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(exact_list_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(exact_list_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ( |
@@ -132,7 +132,7 @@ |
// Invalid json input should not change the current blacklist settings. |
const std::string invalid_json = "invalid"; |
- EXPECT_FALSE(blacklist.LoadGpuBlacklist(invalid_json, false)); |
+ EXPECT_FALSE(blacklist.LoadGpuBlacklist(invalid_json, false, false)); |
flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ( |
@@ -170,7 +170,7 @@ |
GpuBlacklist blacklist("1.0"); |
// Blacklist entries won't be filtered to the current OS only upon loading. |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), |
@@ -185,7 +185,7 @@ |
static_cast<uint32>(GpuFeatureFlags::kGpuFeatureWebgl)); |
#if defined(OS_WIN) || defined(OS_LINUX) || defined(OS_MACOSX) |
// Blacklist entries will be filtered to the current OS only upon loading. |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_json, true)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_json, true, false)); |
flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), |
@@ -223,7 +223,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_linux_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(vendor_linux_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), 0u); |
@@ -263,7 +263,8 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(linux_except_nvidia_json, false)); |
+ EXPECT_TRUE( |
+ blacklist.LoadGpuBlacklist(linux_except_nvidia_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), 0u); |
@@ -301,7 +302,8 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(linux_except_intel_json, false)); |
+ EXPECT_TRUE( |
+ blacklist.LoadGpuBlacklist(linux_except_intel_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), 0u); |
@@ -340,7 +342,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(date_windows_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(date_windows_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), 0u); |
@@ -373,7 +375,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(devices_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(devices_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsMacosx, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), |
@@ -408,7 +410,7 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist("1.0"); |
- EXPECT_TRUE(blacklist.LoadGpuBlacklist(devices_json, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(devices_json, false, false)); |
GpuFeatureFlags flags = blacklist.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsChromeOS, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), |
@@ -439,13 +441,13 @@ |
scoped_ptr<Version> os_version(Version::GetVersionFromString("10.6.4")); |
GpuBlacklist blacklist9("9.0"); |
- EXPECT_TRUE(blacklist9.LoadGpuBlacklist(browser_version_json, false)); |
+ EXPECT_TRUE(blacklist9.LoadGpuBlacklist(browser_version_json, false, false)); |
GpuFeatureFlags flags = blacklist9.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsWin, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), 0u); |
GpuBlacklist blacklist10("10.0"); |
- EXPECT_TRUE(blacklist10.LoadGpuBlacklist(browser_version_json, false)); |
+ EXPECT_TRUE(blacklist10.LoadGpuBlacklist(browser_version_json, false, false)); |
flags = blacklist10.DetermineGpuFeatureFlags( |
GpuBlacklist::kOsWin, os_version.get(), gpu_info()); |
EXPECT_EQ(flags.flags(), |
@@ -470,6 +472,36 @@ |
"}"; |
GpuBlacklist blacklist("1.0"); |
- EXPECT_FALSE(blacklist.LoadGpuBlacklist(malformed_vendor_json, false)); |
+ EXPECT_FALSE(blacklist.LoadGpuBlacklist(malformed_vendor_json, false, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(malformed_vendor_json, false, true)); |
+ EXPECT_EQ(0u, blacklist.num_entries()); |
} |
+TEST_F(GpuBlacklistTest, UnknownField) { |
+ const std::string unknown_field_json = |
+ "{\n" |
+ " \"name\": \"gpu blacklist\",\n" |
+ " \"version\": \"0.1\",\n" |
+ " \"entries\": [\n" |
+ " {\n" |
+ " \"id\": 1,\n" |
+ " \"unknown_field\": 0,\n" |
+ " \"blacklist\": [\n" |
+ " \"accelerated_2d_canvas\"\n" |
+ " ]\n" |
+ " },\n" |
+ " {\n" |
+ " \"id\": 2,\n" |
+ " \"blacklist\": [\n" |
+ " \"accelerated_2d_canvas\"\n" |
+ " ]\n" |
+ " }\n" |
+ " ]\n" |
+ "}"; |
+ GpuBlacklist blacklist("1.0"); |
+ |
+ EXPECT_FALSE(blacklist.LoadGpuBlacklist(unknown_field_json, false, false)); |
+ EXPECT_TRUE(blacklist.LoadGpuBlacklist(unknown_field_json, false, true)); |
+ EXPECT_EQ(1u, blacklist.num_entries()); |
+} |
+ |