| Index: Source/web/tests/ViewportTest.cpp
|
| diff --git a/Source/web/tests/ViewportTest.cpp b/Source/web/tests/ViewportTest.cpp
|
| index e5ce10fbfb5c98c4edccf1b69504f16390b6dece..99da65a80ea87c16042e69328f3e444fe6f88f5c 100644
|
| --- a/Source/web/tests/ViewportTest.cpp
|
| +++ b/Source/web/tests/ViewportTest.cpp
|
| @@ -2947,6 +2947,11 @@ TEST_F(ViewportTest, viewportTriggersGpuRasterization)
|
| webViewHelper.webView()->resize(WebSize(640, 480));
|
| EXPECT_TRUE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
|
|
| + registerMockedHttpURLLoad("viewport/viewport-gpu-rasterization-expanded-heuristics.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-gpu-rasterization-expanded-heuristics.html", true, 0, 0, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| registerMockedHttpURLLoad("viewport/viewport-inferred-values-do-not-trigger-gpu-rasterization.html");
|
| webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-inferred-values-do-not-trigger-gpu-rasterization.html", true, 0, 0, setViewportSettings);
|
| webViewHelper.webView()->resize(WebSize(640, 480));
|
| @@ -2968,6 +2973,48 @@ TEST_F(ViewportTest, viewportTriggersGpuRasterization)
|
| EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| }
|
|
|
| +class GpuRasterizationExpandedHeuristicsWebViewClient : public FrameTestHelpers::TestWebViewClient {
|
| +public:
|
| + virtual bool useExpandedHeuristicsForGpuRasterization() OVERRIDE { return true; }
|
| +};
|
| +
|
| +TEST_F(ViewportTest, viewportTriggersGpuRasterizationWithExpandedHeuristics)
|
| +{
|
| + UseMockScrollbarSettings mockScrollbarSettings;
|
| + GpuRasterizationExpandedHeuristicsWebViewClient client;
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-gpu-rasterization.html");
|
| + FrameTestHelpers::WebViewHelper webViewHelper;
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-gpu-rasterization.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_TRUE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-gpu-rasterization-expanded-heuristics.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-gpu-rasterization-expanded-heuristics.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_TRUE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-inferred-values-do-not-trigger-gpu-rasterization.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-inferred-values-do-not-trigger-gpu-rasterization.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-1.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-1.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-15.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-15.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +
|
| + registerMockedHttpURLLoad("viewport/viewport-130.html");
|
| + webViewHelper.initializeAndLoad(m_baseURL + "viewport/viewport-130.html", true, 0, &client, setViewportSettings);
|
| + webViewHelper.webView()->resize(WebSize(640, 480));
|
| + EXPECT_FALSE(webViewHelper.webViewImpl()->matchesHeuristicsForGpuRasterizationForTesting());
|
| +}
|
| +
|
| class ConsoleMessageWebFrameClient : public FrameTestHelpers::TestWebFrameClient {
|
| public:
|
| virtual void didAddMessageToConsole(const WebConsoleMessage& msg, const WebString& sourceName, unsigned sourceLine, const WebString& stackTrace)
|
|
|