| OLD | NEW |
| 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 "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/file_util.h" | 6 #include "base/file_util.h" |
| 7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
| 8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
| 9 #include "base/strings/stringprintf.h" | 9 #include "base/strings/stringprintf.h" |
| 10 #include "base/test/trace_event_analyzer.h" | 10 #include "base/test/trace_event_analyzer.h" |
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 180 #endif | 180 #endif |
| 181 | 181 |
| 182 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, MAYBE_AcceleratedCompositingAllowed) { | 182 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, MAYBE_AcceleratedCompositingAllowed) { |
| 183 EXPECT_FALSE(GpuDataManager::GetInstance()->IsFeatureBlacklisted( | 183 EXPECT_FALSE(GpuDataManager::GetInstance()->IsFeatureBlacklisted( |
| 184 gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING)); | 184 gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING)); |
| 185 | 185 |
| 186 const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html")); | 186 const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html")); |
| 187 RunEventTest(url, kSwapBuffersEvent, true); | 187 RunEventTest(url, kSwapBuffersEvent, true); |
| 188 } | 188 } |
| 189 | 189 |
| 190 #if defined(USE_AURA) | 190 class AcceleratedCompositingBlockedTest : public GpuFeatureTest { |
| 191 // Compositing is always on for Aura. | 191 public: |
| 192 #define MAYBE_AcceleratedCompositingBlocked DISABLED_AcceleratedCompositingBlock
ed | 192 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { |
| 193 #else | 193 GpuFeatureTest::SetUpInProcessBrowserTestFixture(); |
| 194 #define MAYBE_AcceleratedCompositingBlocked AcceleratedCompositingBlocked | 194 const std::string json_blacklist = |
| 195 #endif | |
| 196 | |
| 197 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, MAYBE_AcceleratedCompositingBlocked) { | |
| 198 const std::string json_blacklist = | |
| 199 "{\n" | 195 "{\n" |
| 200 " \"name\": \"gpu blacklist\",\n" | 196 " \"name\": \"gpu blacklist\",\n" |
| 201 " \"version\": \"1.0\",\n" | 197 " \"version\": \"1.0\",\n" |
| 202 " \"entries\": [\n" | 198 " \"entries\": [\n" |
| 203 " {\n" | 199 " {\n" |
| 204 " \"id\": 1,\n" | 200 " \"id\": 1,\n" |
| 205 " \"features\": [\n" | 201 " \"features\": [\n" |
| 206 " \"accelerated_compositing\"\n" | 202 " \"accelerated_compositing\"\n" |
| 207 " ]\n" | 203 " ]\n" |
| 208 " }\n" | 204 " }\n" |
| 209 " ]\n" | 205 " ]\n" |
| 210 "}"; | 206 "}"; |
| 211 SetupBlacklist(json_blacklist); | 207 SetupBlacklist(json_blacklist); |
| 208 } |
| 209 }; |
| 210 |
| 211 #if defined(USE_AURA) |
| 212 // Compositing is always on for Aura. |
| 213 #define MAYBE_AcceleratedCompositingBlocked DISABLED_AcceleratedCompositingBlock
ed |
| 214 #else |
| 215 #define MAYBE_AcceleratedCompositingBlocked AcceleratedCompositingBlocked |
| 216 #endif |
| 217 |
| 218 IN_PROC_BROWSER_TEST_F(AcceleratedCompositingBlockedTest, |
| 219 MAYBE_AcceleratedCompositingBlocked) { |
| 212 EXPECT_TRUE(GpuDataManager::GetInstance()->IsFeatureBlacklisted( | 220 EXPECT_TRUE(GpuDataManager::GetInstance()->IsFeatureBlacklisted( |
| 213 gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING)); | 221 gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING)); |
| 214 | 222 |
| 215 const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html")); | 223 const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html")); |
| 216 RunEventTest(url, kSwapBuffersEvent, false); | 224 RunEventTest(url, kSwapBuffersEvent, false); |
| 217 } | 225 } |
| 218 | 226 |
| 219 class AcceleratedCompositingTest : public GpuFeatureTest { | 227 class AcceleratedCompositingTest : public GpuFeatureTest { |
| 220 public: | 228 public: |
| 221 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 229 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { |
| (...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 351 | 359 |
| 352 const base::FilePath url(FILE_PATH_LITERAL("feature_multisampling.html")); | 360 const base::FilePath url(FILE_PATH_LITERAL("feature_multisampling.html")); |
| 353 RunTest(url, "\"FALSE\"", true); | 361 RunTest(url, "\"FALSE\"", true); |
| 354 } | 362 } |
| 355 | 363 |
| 356 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, Canvas2DAllowed) { | 364 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, Canvas2DAllowed) { |
| 357 // Accelerated canvas 2D is not supported on XP. | 365 // Accelerated canvas 2D is not supported on XP. |
| 358 if (gpu::GPUTestBotConfig::CurrentConfigMatches("XP")) | 366 if (gpu::GPUTestBotConfig::CurrentConfigMatches("XP")) |
| 359 return; | 367 return; |
| 360 | 368 |
| 361 bool is_blacklisted = false; | 369 EXPECT_FALSE(GpuDataManager::GetInstance()->IsFeatureBlacklisted( |
| 362 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) | 370 gpu::GPU_FEATURE_TYPE_ACCELERATED_2D_CANVAS)); |
| 363 // Blacklist rule #24 disables accelerated_2d_canvas on Linux. | |
| 364 is_blacklisted = true; | |
| 365 #endif | |
| 366 | |
| 367 EXPECT_EQ(is_blacklisted, | |
| 368 GpuDataManager::GetInstance()->IsFeatureBlacklisted( | |
| 369 gpu::GPU_FEATURE_TYPE_ACCELERATED_2D_CANVAS)); | |
| 370 | 371 |
| 371 const base::FilePath url(FILE_PATH_LITERAL("feature_canvas2d.html")); | 372 const base::FilePath url(FILE_PATH_LITERAL("feature_canvas2d.html")); |
| 372 RunEventTest(url, kAcceleratedCanvasCreationEvent, !is_blacklisted); | 373 RunEventTest(url, kAcceleratedCanvasCreationEvent, true); |
| 373 } | 374 } |
| 374 | 375 |
| 375 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, Canvas2DBlocked) { | 376 IN_PROC_BROWSER_TEST_F(GpuFeatureTest, Canvas2DBlocked) { |
| 376 const std::string json_blacklist = | 377 const std::string json_blacklist = |
| 377 "{\n" | 378 "{\n" |
| 378 " \"name\": \"gpu blacklist\",\n" | 379 " \"name\": \"gpu blacklist\",\n" |
| 379 " \"version\": \"1.0\",\n" | 380 " \"version\": \"1.0\",\n" |
| 380 " \"entries\": [\n" | 381 " \"entries\": [\n" |
| 381 " {\n" | 382 " {\n" |
| 382 " \"id\": 1,\n" | 383 " \"id\": 1,\n" |
| (...skipping 161 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 544 base::StringPrintf( | 545 base::StringPrintf( |
| 545 "%d (resize offset %d): IOSurface width %d -> %d; Creates %d " | 546 "%d (resize offset %d): IOSurface width %d -> %d; Creates %d " |
| 546 "Expected %d", offset_i, offsets[offset_i], | 547 "Expected %d", offset_i, offsets[offset_i], |
| 547 old_width, new_width, num_creates, expected_creates); | 548 old_width, new_width, num_creates, expected_creates); |
| 548 } | 549 } |
| 549 } | 550 } |
| 550 } | 551 } |
| 551 #endif | 552 #endif |
| 552 | 553 |
| 553 } // namespace | 554 } // namespace |
| OLD | NEW |