1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #include "content/browser/gpu/compositor_util.h"
6 #include "content/test/content_browser_test.h"
9 #include "base/mac/mac_util.h"
11 #include "base/win/windows_version.h"
16 typedef ContentBrowserTest CompositorUtilTest;
18 // Test that threaded compositing and FCM are in the expected mode on the bots
20 IN_PROC_BROWSER_TEST_F(CompositorUtilTest, CompositingModeAsExpected) {
21 enum CompositingMode {
24 THREADED, // Implies FCM
25 DELEGATED, // Implies threaded
26 } expected_mode = DISABLED;
28 expected_mode = DELEGATED;
29 #elif defined(OS_ANDROID)
30 expected_mode = THREADED;
31 #elif defined(OS_MACOSX)
32 if (base::mac::IsOSMountainLionOrLater())
33 expected_mode = THREADED;
35 if (base::win::GetVersion() >= base::win::VERSION_VISTA)
36 expected_mode = THREADED;
39 EXPECT_EQ(expected_mode == ENABLED ||
40 expected_mode == THREADED ||
41 expected_mode == DELEGATED,
42 IsForceCompositingModeEnabled());
43 EXPECT_EQ(expected_mode == THREADED ||
44 expected_mode == DELEGATED,
45 IsThreadedCompositingEnabled());
46 EXPECT_EQ(expected_mode == DELEGATED,
47 IsDelegatedRendererEnabled());