TEST_F(WebFrameTest, DeviceScaleFactorUsesDefaultWithoutViewportTag) { registerMockedHttpURLLoad("no_viewport_tag.html"); int viewportWidth = 640; int viewportHeight = 480; FixedLayoutTestWebViewClient client; client.m_screenInfo.horizontalDPI = 320; client.m_windowRect = WebRect(0, 0, viewportWidth, viewportHeight); WebView* webView = static_cast<WebView*>(FrameTestHelpers::createWebViewAndLoad(m_baseURL + "no_viewport_tag.html", true, 0, &client)); webView->settings()->setViewportEnabled(true); webView->enableFixedLayoutMode(true); webView->resize(WebSize(viewportWidth, viewportHeight)); webView->layout(); EXPECT_EQ(2, webView->deviceScaleFactor()); // Device scale factor should be a component of page scale factor in fixed-layout, so a scale of 1 becomes 2. webView->setPageScaleFactorLimits(1, 2); EXPECT_EQ(2, webView->pageScaleFactor()); // Force the layout to happen before leaving the test. webView->mainFrame()->contentAsText(1024).utf8(); }
TEST_F(WebFrameTest, DeviceScaleFactorUsesDefaultWithoutViewportTag) { registerMockedHttpURLLoad("no_viewport_tag.html"); int viewportWidth = 640; int viewportHeight = 480; FixedLayoutTestWebViewClient client; client.m_screenInfo.horizontalDPI = 160; client.m_windowRect = WebRect(0, 0, viewportWidth, viewportHeight); WebView* webView = static_cast<WebView*>(FrameTestHelpers::createWebViewAndLoad(m_baseURL + "no_viewport_tag.html", true, 0, &client)); webView->resize(WebSize(viewportWidth, viewportHeight)); webView->settings()->setViewportEnabled(true); webView->settings()->setDefaultDeviceScaleFactor(2); webView->enableFixedLayoutMode(true); webView->layout(); EXPECT_EQ(2, webView->deviceScaleFactor()); }