Chromium Code Reviews| Index: chrome/browser/browser_commands_unittest.cc |
| diff --git a/chrome/browser/browser_commands_unittest.cc b/chrome/browser/browser_commands_unittest.cc |
| index 7a6077c7215075e76fa9aab797fc5a2fb1ff2b0b..d57799ad18f5053cd4e42983b59e2db78f73a61a 100644 |
| --- a/chrome/browser/browser_commands_unittest.cc |
| +++ b/chrome/browser/browser_commands_unittest.cc |
| @@ -8,6 +8,7 @@ |
| #include "chrome/browser/ui/browser_commands.h" |
| #include "chrome/browser/ui/browser_finder.h" |
| #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| +#include "chrome/browser/ui/zoom/chrome_zoom_level_prefs.h" |
| #include "chrome/common/url_constants.h" |
| #include "chrome/test/base/browser_with_test_window_test.h" |
| #include "chrome/test/base/testing_profile.h" |
| @@ -18,6 +19,7 @@ |
| #include "content/public/browser/navigation_controller.h" |
| #include "content/public/browser/navigation_entry.h" |
| #include "content/public/browser/web_contents.h" |
| +#include "testing/gtest/include/gtest/gtest.h" |
| typedef BrowserWithTestWindowTest BrowserCommandsTest; |
| @@ -237,11 +239,11 @@ TEST_F(BrowserCommandsTest, OnMaxZoomIn) { |
| GURL url("http://www.google.com"); |
| AddTab(browser(), url); |
| - content::WebContents* contents1 = tab_strip_model->GetWebContentsAt(0); |
| + WebContents* firstTab = tab_strip_model->GetWebContentsAt(0); |
|
Alexei Svitkine (slow)
2015/02/26 14:26:35
Hmm, not sure at which point this slipped through
sarka
2015/02/26 15:37:22
My bad, I updated the names in the last CL. The na
|
| // Continue to zoom in until zoom percent reaches 500. |
| for (int i = 0; i < 9; ++i) { |
| - ui_zoom::PageZoom::Zoom(contents1, content::PAGE_ZOOM_IN); |
| + ui_zoom::PageZoom::Zoom(firstTab, content::PAGE_ZOOM_IN); |
| } |
| // TODO(a.sarkar.arun@gmail.com): Figure out why Zoom-In menu item is not |
| @@ -250,8 +252,8 @@ TEST_F(BrowserCommandsTest, OnMaxZoomIn) { |
| if (chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)) |
| chrome::UpdateCommandEnabled(browser(), IDC_ZOOM_PLUS, false); |
| - ZoomController* zoom_controller = ZoomController::FromWebContents(contents1); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 500.0f); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(firstTab); |
| + EXPECT_FLOAT_EQ(500.0f, zoom_controller->GetZoomPercent()); |
| EXPECT_FALSE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| @@ -262,15 +264,15 @@ TEST_F(BrowserCommandsTest, OnMaxZoomOut) { |
| GURL url("http://www.google.com"); |
| AddTab(browser(), url); |
| - content::WebContents* contents1 = tab_strip_model->GetWebContentsAt(0); |
| + WebContents* firstTab = tab_strip_model->GetWebContentsAt(0); |
| // Continue to zoom out until zoom percent reaches 25. |
| for (int i = 0; i < 7; ++i) { |
| - ui_zoom::PageZoom::Zoom(contents1, content::PAGE_ZOOM_OUT); |
| + ui_zoom::PageZoom::Zoom(firstTab, content::PAGE_ZOOM_OUT); |
| } |
| - ZoomController* zoom_controller = ZoomController::FromWebContents(contents1); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 25.0f); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(firstTab); |
| + EXPECT_FLOAT_EQ(25.0f, zoom_controller->GetZoomPercent()); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_FALSE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| @@ -281,13 +283,13 @@ TEST_F(BrowserCommandsTest, OnZoomReset) { |
| GURL url("http://www.google.com"); |
| AddTab(browser(), url); |
| - content::WebContents* contents1 = tab_strip_model->GetWebContentsAt(0); |
| + WebContents* firstTab = tab_strip_model->GetWebContentsAt(0); |
| // Change the zoom percentage to 100. |
| - ui_zoom::PageZoom::Zoom(contents1, content::PAGE_ZOOM_RESET); |
| + ui_zoom::PageZoom::Zoom(firstTab, content::PAGE_ZOOM_RESET); |
| - ZoomController* zoom_controller = ZoomController::FromWebContents(contents1); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 100.0f); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(firstTab); |
| + EXPECT_FLOAT_EQ(100.0f, zoom_controller->GetZoomPercent()); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_FALSE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| @@ -298,14 +300,14 @@ TEST_F(BrowserCommandsTest, OnZoomLevelChanged) { |
| GURL url("http://www.google.com"); |
| AddTab(browser(), url); |
| - content::WebContents* contents1 = tab_strip_model->GetWebContentsAt(0); |
| + WebContents* firstTab = tab_strip_model->GetWebContentsAt(0); |
| // Changing zoom percentage from default should enable all the zoom |
| // NSMenuItems. |
| - ui_zoom::PageZoom::Zoom(contents1, content::PAGE_ZOOM_IN); |
| + ui_zoom::PageZoom::Zoom(firstTab, content::PAGE_ZOOM_IN); |
| - ZoomController* zoom_controller = ZoomController::FromWebContents(contents1); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 110.0f); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(firstTab); |
| + EXPECT_FLOAT_EQ(110.0f, zoom_controller->GetZoomPercent()); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| @@ -320,23 +322,51 @@ TEST_F(BrowserCommandsTest, OnZoomChangedForActiveTab) { |
| // Add First tab. |
| AddTab(browser(), url); |
| AddTab(browser(), url1); |
| - content::WebContents* contents1 = tab_strip_model->GetWebContentsAt(0); |
| + WebContents* firstTab = tab_strip_model->GetWebContentsAt(0); |
| - ZoomController* zoom_controller = ZoomController::FromWebContents(contents1); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 100.0f); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(firstTab); |
| + EXPECT_FLOAT_EQ(100.0f, zoom_controller->GetZoomPercent()); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_FALSE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| // Add Second tab. |
| - content::WebContents* contents2 = tab_strip_model->GetWebContentsAt(1); |
| + WebContents* secondTab = tab_strip_model->GetWebContentsAt(1); |
| tab_strip_model->ActivateTabAt(1, true); |
| EXPECT_TRUE(tab_strip_model->IsTabSelected(1)); |
| - ui_zoom::PageZoom::Zoom(contents2, content::PAGE_ZOOM_OUT); |
| + ui_zoom::PageZoom::Zoom(secondTab, content::PAGE_ZOOM_OUT); |
| - zoom_controller = ZoomController::FromWebContents(contents2); |
| - EXPECT_EQ(zoom_controller->GetZoomPercent(), 90.0f); |
| + zoom_controller = ZoomController::FromWebContents(secondTab); |
| + EXPECT_FLOAT_EQ(90.0f, zoom_controller->GetZoomPercent()); |
| + EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| + EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| + EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| +} |
| + |
| +TEST_F(BrowserCommandsTest, OnDefaultZoomLevelChanged) { |
| + TabStripModel* tab_strip_model = browser()->tab_strip_model(); |
| + GURL url("http://code.google.com"); |
| + AddTab(browser(), url); |
| + WebContents* currentTab = tab_strip_model->GetWebContentsAt(0); |
| + ZoomController* zoom_controller = ZoomController::FromWebContents(currentTab); |
| + |
| + // Set the default zoom level to 125. |
| + profile()->GetZoomLevelPrefs()->SetDefaultZoomLevelPref( |
| + content::ZoomFactorToZoomLevel(1.25)); |
| + EXPECT_FLOAT_EQ(125.0f, zoom_controller->GetZoomPercent()); |
| + |
| + // Actual Size from context menu should be disabled now. |
| + EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| + EXPECT_FALSE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| + EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |
| + |
| + // Change the zoom level. |
| + ui_zoom::PageZoom::Zoom(currentTab, content::PAGE_ZOOM_IN); |
| + |
| + EXPECT_FLOAT_EQ(150.0f, zoom_controller->GetZoomPercent()); |
| + |
| + // Tab no longer at default zoom hence actual size should be enabled. |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_PLUS)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_NORMAL)); |
| EXPECT_TRUE(chrome::IsCommandEnabled(browser(), IDC_ZOOM_MINUS)); |