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 |