| Index: chrome/test/gpu/gpu_feature_browsertest.cc
|
| diff --git a/chrome/test/gpu/gpu_feature_browsertest.cc b/chrome/test/gpu/gpu_feature_browsertest.cc
|
| index 6836ea360abe3f39883219889ccca08b646144f1..8bed26b3fcf401c0a9e535404f16f3458bf7baf2 100644
|
| --- a/chrome/test/gpu/gpu_feature_browsertest.cc
|
| +++ b/chrome/test/gpu/gpu_feature_browsertest.cc
|
| @@ -17,6 +17,7 @@
|
| #include "chrome/test/base/tracing.h"
|
| #include "chrome/test/base/ui_test_utils.h"
|
| #include "content/public/browser/gpu_data_manager.h"
|
| +#include "content/public/common/content_client.h"
|
| #include "content/public/common/content_switches.h"
|
| #include "content/public/test/browser_test_utils.h"
|
| #include "gpu/config/gpu_feature_type.h"
|
| @@ -41,14 +42,24 @@ using trace_analyzer::TraceEventVector;
|
|
|
| namespace {
|
|
|
| -const char kSwapBuffersEvent[] = "SwapBuffers";
|
| const char kAcceleratedCanvasCreationEvent[] = "Canvas2DLayerBridgeCreation";
|
| const char kWebGLCreationEvent[] = "DrawingBufferCreation";
|
|
|
| +class FakeContentClient : public content::ContentClient {
|
| +};
|
| +
|
| class GpuFeatureTest : public InProcessBrowserTest {
|
| public:
|
| GpuFeatureTest() : category_patterns_("test_gpu") {}
|
|
|
| + virtual void SetUp() OVERRIDE {
|
| + content::SetContentClient(&content_client_);
|
| + }
|
| +
|
| + virtual void TearDown() OVERRIDE {
|
| + content::SetContentClient(NULL);
|
| + }
|
| +
|
| virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
|
| base::FilePath test_dir;
|
| ASSERT_TRUE(PathService::Get(chrome::DIR_TEST_DATA, &test_dir));
|
| @@ -160,6 +171,7 @@ class GpuFeatureTest : public InProcessBrowserTest {
|
| scoped_ptr<TraceAnalyzer> analyzer_;
|
| std::string category_patterns_;
|
| std::string trace_events_json_;
|
| + FakeContentClient content_client_;
|
| };
|
|
|
| class GpuFeaturePixelTest : public GpuFeatureTest {
|
| @@ -170,69 +182,39 @@ class GpuFeaturePixelTest : public GpuFeatureTest {
|
| }
|
| };
|
|
|
| -#if defined(OS_WIN) || defined(ADDRESS_SANITIZER) || defined(USE_AURA) || \
|
| - defined(OS_MACOSX)
|
| -// This test is flaky on Windows. http://crbug.com/177113
|
| -// Also fails under AddressSanitizer. http://crbug.com/185178
|
| -// It fundamentally doesn't test the right thing on Aura.
|
| -// http://crbug.com/280675
|
| -// This does not work with software compositing on Mac. http://crbug.com/286038
|
| -#define MAYBE_AcceleratedCompositingAllowed DISABLED_AcceleratedCompositingAllowed
|
| -#else
|
| -#define MAYBE_AcceleratedCompositingAllowed AcceleratedCompositingAllowed
|
| -#endif
|
| -
|
| -IN_PROC_BROWSER_TEST_F(GpuFeatureTest, MAYBE_AcceleratedCompositingAllowed) {
|
| - EXPECT_FALSE(GpuDataManager::GetInstance()->IsFeatureBlacklisted(
|
| - gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING));
|
| -
|
| - const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html"));
|
| - RunEventTest(url, kSwapBuffersEvent, true);
|
| -}
|
| -
|
| -class AcceleratedCompositingBlockedTest : public GpuFeatureTest {
|
| +class GpuCompositingBlockedTest : public GpuFeatureTest {
|
| public:
|
| virtual void SetUpInProcessBrowserTestFixture() OVERRIDE {
|
| GpuFeatureTest::SetUpInProcessBrowserTestFixture();
|
| const std::string json_blacklist =
|
| - "{\n"
|
| - " \"name\": \"gpu blacklist\",\n"
|
| - " \"version\": \"1.0\",\n"
|
| - " \"entries\": [\n"
|
| - " {\n"
|
| - " \"id\": 1,\n"
|
| - " \"features\": [\n"
|
| - " \"accelerated_compositing\"\n"
|
| - " ]\n"
|
| - " }\n"
|
| - " ]\n"
|
| - "}";
|
| + "{\n"
|
| + " \"name\": \"gpu blacklist\",\n"
|
| + " \"version\": \"1.0\",\n"
|
| + " \"entries\": [\n"
|
| + " {\n"
|
| + " \"id\": 1,\n"
|
| + " \"features\": [\n"
|
| + " \"gpu_compositing\"\n"
|
| + " ]\n"
|
| + " }\n"
|
| + " ]\n"
|
| + "}";
|
| SetupBlacklist(json_blacklist);
|
| }
|
| };
|
|
|
| -#if defined(USE_AURA) || defined(OS_MACOSX)
|
| -// Compositing is always on for Aura and Mac.
|
| -#define MAYBE_AcceleratedCompositingBlocked DISABLED_AcceleratedCompositingBlocked
|
| -#else
|
| -// TODO(jam): http://crbug.com/350550
|
| -#define MAYBE_AcceleratedCompositingBlocked DISABLED_AcceleratedCompositingBlocked
|
| -#endif
|
| -
|
| -IN_PROC_BROWSER_TEST_F(AcceleratedCompositingBlockedTest,
|
| - MAYBE_AcceleratedCompositingBlocked) {
|
| +IN_PROC_BROWSER_TEST_F(GpuCompositingBlockedTest, GpuCompositingBlocked) {
|
| EXPECT_TRUE(GpuDataManager::GetInstance()->IsFeatureBlacklisted(
|
| - gpu::GPU_FEATURE_TYPE_ACCELERATED_COMPOSITING));
|
| -
|
| - const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html"));
|
| - RunEventTest(url, kSwapBuffersEvent, false);
|
| + gpu::GPU_FEATURE_TYPE_GPU_COMPOSITING));
|
| }
|
|
|
| -// Times out: http://crbug.com/166060
|
| -IN_PROC_BROWSER_TEST_F(GpuFeatureTest, DISABLED_WebGLAllowed) {
|
| +IN_PROC_BROWSER_TEST_F(GpuFeatureTest, WebGLAllowed) {
|
| EXPECT_FALSE(GpuDataManager::GetInstance()->IsFeatureBlacklisted(
|
| gpu::GPU_FEATURE_TYPE_WEBGL));
|
|
|
| + // The below times out: http://crbug.com/166060
|
| + return;
|
| +
|
| const base::FilePath url(FILE_PATH_LITERAL("feature_webgl.html"));
|
| RunEventTest(url, kWebGLCreationEvent, true);
|
| }
|
| @@ -404,21 +386,6 @@ IN_PROC_BROWSER_TEST_F(GpuFeatureTest,
|
| RunTest(url, "\"SUCCESS\"", false);
|
| }
|
|
|
| -class ThreadedCompositorTest : public GpuFeatureTest {
|
| - public:
|
| - virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE {
|
| - GpuFeatureTest::SetUpCommandLine(command_line);
|
| - command_line->AppendSwitch(switches::kEnableThreadedCompositing);
|
| - }
|
| -};
|
| -
|
| -// http://crbug.com/157985
|
| -IN_PROC_BROWSER_TEST_F(ThreadedCompositorTest, DISABLED_ThreadedCompositor) {
|
| - const base::FilePath url(FILE_PATH_LITERAL("feature_compositing.html"));
|
| - RunEventTest(url, kSwapBuffersEvent, true);
|
| -}
|
| -
|
| -
|
| #if defined(OS_WIN) || defined(OS_CHROMEOS) || defined(OS_MACOSX)
|
| // http://crbug.com/162343: flaky on Windows and Mac, failing on ChromiumOS.
|
| #define MAYBE_RafNoDamage DISABLED_RafNoDamage
|
|
|