| Index: content/renderer/render_view_browsertest.cc
|
| diff --git a/content/renderer/render_view_browsertest.cc b/content/renderer/render_view_browsertest.cc
|
| index 0f0f1a35bb38e08434bb34825a57b2cc4582b290..64556e6969084e2caa7e133c395db71bbe7633f2 100644
|
| --- a/content/renderer/render_view_browsertest.cc
|
| +++ b/content/renderer/render_view_browsertest.cc
|
| @@ -1628,6 +1628,32 @@
|
| }
|
| #endif
|
|
|
| +TEST_F(RenderViewImplTest, ZoomLimit) {
|
| + const double kMinZoomLevel = ZoomFactorToZoomLevel(kMinimumZoomFactor);
|
| + const double kMaxZoomLevel = ZoomFactorToZoomLevel(kMaximumZoomFactor);
|
| +
|
| + // Verifies navigation to a URL with preset zoom level indeed sets the level.
|
| + // Regression test for http://crbug.com/139559, where the level was not
|
| + // properly set when it is out of the default zoom limits of WebView.
|
| + CommonNavigationParams common_params;
|
| + common_params.url = GURL("data:text/html,min_zoomlimit_test");
|
| + view()->OnSetZoomLevelForLoadingURL(common_params.url, kMinZoomLevel);
|
| + frame()->Navigate(common_params, StartNavigationParams(),
|
| + RequestNavigationParams());
|
| + ProcessPendingMessages();
|
| + EXPECT_DOUBLE_EQ(kMinZoomLevel, view()->GetWebView()->zoomLevel());
|
| +
|
| + // It should work even when the zoom limit is temporarily changed in the page.
|
| + view()->GetWebView()->zoomLimitsChanged(ZoomFactorToZoomLevel(1.0),
|
| + ZoomFactorToZoomLevel(1.0));
|
| + common_params.url = GURL("data:text/html,max_zoomlimit_test");
|
| + view()->OnSetZoomLevelForLoadingURL(common_params.url, kMaxZoomLevel);
|
| + frame()->Navigate(common_params, StartNavigationParams(),
|
| + RequestNavigationParams());
|
| + ProcessPendingMessages();
|
| + EXPECT_DOUBLE_EQ(kMaxZoomLevel, view()->GetWebView()->zoomLevel());
|
| +}
|
| +
|
| TEST_F(RenderViewImplTest, SetEditableSelectionAndComposition) {
|
| // Load an HTML page consisting of an input field.
|
| LoadHTML("<html>"
|
|
|