Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(171)

Unified Diff: chrome/browser/ui/browser_navigator_browsertest.cc

Issue 7178002: Open Options page on top of NTP. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Add support for about:blank and tests. Created 9 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/browser_navigator_browsertest.cc
diff --git a/chrome/browser/ui/browser_navigator_browsertest.cc b/chrome/browser/ui/browser_navigator_browsertest.cc
index 2ccdbaaadf35801e26b925ae8cae77fb9e1c974e..6d30538d11e1edd1306c6c97cb956a79c0cf9930 100644
--- a/chrome/browser/ui/browser_navigator_browsertest.cc
+++ b/chrome/browser/ui/browser_navigator_browsertest.cc
@@ -886,4 +886,105 @@ IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
EXPECT_FALSE(tab_contents->is_crashed());
}
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromDefaultToOptionsInSameTab) {
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/browser"),
Paweł Hajdan Jr. 2011/06/18 10:38:51 nit: Please use chrome/common/url_constants for al
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromBlankToOptionsInSameTab) {
+ browser::NavigateParams p(MakeNavigateParams());
+ p.url = GURL("about:blank");
+ browser::Navigate(&p);
Paweł Hajdan Jr. 2011/06/18 10:38:51 Why not just NavigateToURL?
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/browser"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromNTPToOptionsInSameTab) {
+ browser::NavigateParams p(MakeNavigateParams());
+ p.url = GURL("chrome://newtab");
+ browser::Navigate(&p);
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://newtab"),
+ browser()->GetSelectedTabContents()->GetURL());
+
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/browser"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromPageToOptionsInNewTab) {
+ browser::NavigateParams p(MakeNavigateParams());
+ browser::Navigate(&p);
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
Paweł Hajdan Jr. 2011/06/18 10:38:51 Those WaitForNavigation... calls are all racy. I t
+ EXPECT_EQ(GetGoogleURL(), browser()->GetSelectedTabContents()->GetURL());
+ EXPECT_EQ(1u, BrowserList::size());
+ EXPECT_EQ(1, browser()->tab_count());
+
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(2, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/browser"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
Greg Billock 2011/06/17 21:16:07 I moved this to the end, and now they all pass wit
+ NavigateFromOtherTabToSingletonOptions) {
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
Paweł Hajdan Jr. 2011/06/18 10:38:51 Please check return value of this.
+ browser()->AddSelectedTabWithURL(GetGoogleURL(), PageTransition::LINK);
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+
+ browser()->OpenOptionsDialog();
+ EXPECT_EQ(2, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/browser"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromNTPToOptionsSingleton) {
+ browser()->OpenOptionsDialog();
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+
+ browser()->NewTab();
+ EXPECT_EQ(2, browser()->tab_count());
+
+ browser()->OpenOptionsDialog();
+ EXPECT_EQ(2, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
+IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
+ NavigateFromNTPToOptionsPageInSameTab) {
+ browser()->ShowOptionsTab("personal");
+ ui_test_utils::WaitForNavigationInCurrentTab(browser());
+ EXPECT_EQ(1, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/personal"),
+ browser()->GetSelectedTabContents()->GetURL());
+
+ browser()->NewTab();
+ EXPECT_EQ(2, browser()->tab_count());
+
+ browser()->ShowOptionsTab("personal");
+ EXPECT_EQ(2, browser()->tab_count());
+ EXPECT_EQ(GURL("chrome://settings/personal"),
+ browser()->GetSelectedTabContents()->GetURL());
+}
+
} // namespace
« chrome/browser/ui/browser_navigator.cc ('K') | « chrome/browser/ui/browser_navigator.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698