| 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 dbd6c397782feab826880078fd452e49eb72df91..e48c9169b94ab5aff4405ecde07f4518adf38b9f 100644
|
| --- a/chrome/browser/ui/browser_navigator_browsertest.cc
|
| +++ b/chrome/browser/ui/browser_navigator_browsertest.cc
|
| @@ -164,6 +164,55 @@ IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, Disposition_SingletonTabExisting) {
|
| }
|
|
|
| IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
|
| + Disposition_SingletonTabRespectingRef) {
|
| + GURL singleton_ref_url1("http://maps.google.com/#a");
|
| + GURL singleton_ref_url2("http://maps.google.com/#b");
|
| + GURL singleton_ref_url3("http://maps.google.com/");
|
| +
|
| + browser()->AddSelectedTabWithURL(singleton_ref_url1, PageTransition::LINK);
|
| +
|
| + // We should have one browser with 2 tabs, 2nd selected.
|
| + EXPECT_EQ(1u, BrowserList::size());
|
| + EXPECT_EQ(2, browser()->tab_count());
|
| + EXPECT_EQ(1, browser()->active_index());
|
| +
|
| + // Navigate to singleton_url2.
|
| + browser::NavigateParams p(MakeNavigateParams());
|
| + p.disposition = SINGLETON_TAB;
|
| + p.url = singleton_ref_url2;
|
| + browser::Navigate(&p);
|
| +
|
| + // We should now have 2 tabs, the 2nd one selected.
|
| + EXPECT_EQ(browser(), p.browser);
|
| + EXPECT_EQ(2, browser()->tab_count());
|
| + EXPECT_EQ(1, browser()->active_index());
|
| +
|
| + // Navigate to singleton_url2, but with respect ref set.
|
| + p = MakeNavigateParams();
|
| + p.disposition = SINGLETON_TAB;
|
| + p.url = singleton_ref_url2;
|
| + p.ref_behavior = browser::NavigateParams::RESPECT_REF;
|
| + browser::Navigate(&p);
|
| +
|
| + // We should now have 3 tabs, the 3th one selected.
|
| + EXPECT_EQ(browser(), p.browser);
|
| + EXPECT_EQ(3, browser()->tab_count());
|
| + EXPECT_EQ(2, browser()->active_index());
|
| +
|
| + // Navigate to singleton_url3.
|
| + p = MakeNavigateParams();
|
| + p.disposition = SINGLETON_TAB;
|
| + p.url = singleton_ref_url3;
|
| + p.ref_behavior = browser::NavigateParams::RESPECT_REF;
|
| + browser::Navigate(&p);
|
| +
|
| + // We should now have 4 tabs, the 4th one selected.
|
| + EXPECT_EQ(browser(), p.browser);
|
| + EXPECT_EQ(4, browser()->tab_count());
|
| + EXPECT_EQ(3, browser()->active_index());
|
| +}
|
| +
|
| +IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest,
|
| Disposition_SingletonTabNoneExisting) {
|
| GURL singleton_url1("http://maps.google.com/");
|
|
|
|
|