OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/browser_navigator_browsertest.h" | 5 #include "chrome/browser/ui/browser_navigator_browsertest.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "chrome/app/chrome_command_ids.h" | 8 #include "chrome/app/chrome_command_ids.h" |
9 #include "chrome/browser/autocomplete/autocomplete_edit.h" | 9 #include "chrome/browser/autocomplete/autocomplete_edit.h" |
10 #include "chrome/browser/profiles/profile.h" | 10 #include "chrome/browser/profiles/profile.h" |
(...skipping 146 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 // The middle tab should now be selected. | 157 // The middle tab should now be selected. |
158 EXPECT_EQ(browser(), p.browser); | 158 EXPECT_EQ(browser(), p.browser); |
159 EXPECT_EQ(1, browser()->active_index()); | 159 EXPECT_EQ(1, browser()->active_index()); |
160 | 160 |
161 // No tab contents should have been created | 161 // No tab contents should have been created |
162 EXPECT_EQ(previous_tab_contents_count, | 162 EXPECT_EQ(previous_tab_contents_count, |
163 created_tab_contents_count_); | 163 created_tab_contents_count_); |
164 } | 164 } |
165 | 165 |
166 IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, | 166 IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, |
| 167 Disposition_SingletonTabRespectingRef) { |
| 168 GURL singleton_ref_url1("http://maps.google.com/#a"); |
| 169 GURL singleton_ref_url2("http://maps.google.com/#b"); |
| 170 GURL singleton_ref_url3("http://maps.google.com/"); |
| 171 |
| 172 browser()->AddSelectedTabWithURL(singleton_ref_url1, PageTransition::LINK); |
| 173 |
| 174 // We should have one browser with 2 tabs, 2nd selected. |
| 175 EXPECT_EQ(1u, BrowserList::size()); |
| 176 EXPECT_EQ(2, browser()->tab_count()); |
| 177 EXPECT_EQ(1, browser()->active_index()); |
| 178 |
| 179 // Navigate to singleton_url2. |
| 180 browser::NavigateParams p(MakeNavigateParams()); |
| 181 p.disposition = SINGLETON_TAB; |
| 182 p.url = singleton_ref_url2; |
| 183 browser::Navigate(&p); |
| 184 |
| 185 // We should now have 2 tabs, the 2nd one selected. |
| 186 EXPECT_EQ(browser(), p.browser); |
| 187 EXPECT_EQ(2, browser()->tab_count()); |
| 188 EXPECT_EQ(1, browser()->active_index()); |
| 189 |
| 190 // Navigate to singleton_url2, but with respect ref set. |
| 191 p = MakeNavigateParams(); |
| 192 p.disposition = SINGLETON_TAB; |
| 193 p.url = singleton_ref_url2; |
| 194 p.ref_behavior = browser::NavigateParams::RESPECT_REF; |
| 195 browser::Navigate(&p); |
| 196 |
| 197 // We should now have 3 tabs, the 3th one selected. |
| 198 EXPECT_EQ(browser(), p.browser); |
| 199 EXPECT_EQ(3, browser()->tab_count()); |
| 200 EXPECT_EQ(2, browser()->active_index()); |
| 201 |
| 202 // Navigate to singleton_url3. |
| 203 p = MakeNavigateParams(); |
| 204 p.disposition = SINGLETON_TAB; |
| 205 p.url = singleton_ref_url3; |
| 206 p.ref_behavior = browser::NavigateParams::RESPECT_REF; |
| 207 browser::Navigate(&p); |
| 208 |
| 209 // We should now have 4 tabs, the 4th one selected. |
| 210 EXPECT_EQ(browser(), p.browser); |
| 211 EXPECT_EQ(4, browser()->tab_count()); |
| 212 EXPECT_EQ(3, browser()->active_index()); |
| 213 } |
| 214 |
| 215 IN_PROC_BROWSER_TEST_F(BrowserNavigatorTest, |
167 Disposition_SingletonTabNoneExisting) { | 216 Disposition_SingletonTabNoneExisting) { |
168 GURL singleton_url1("http://maps.google.com/"); | 217 GURL singleton_url1("http://maps.google.com/"); |
169 | 218 |
170 // We should have one browser with 1 tab. | 219 // We should have one browser with 1 tab. |
171 EXPECT_EQ(1u, BrowserList::size()); | 220 EXPECT_EQ(1u, BrowserList::size()); |
172 EXPECT_EQ(0, browser()->active_index()); | 221 EXPECT_EQ(0, browser()->active_index()); |
173 | 222 |
174 // Navigate to singleton_url1. | 223 // Navigate to singleton_url1. |
175 browser::NavigateParams p(MakeNavigateParams()); | 224 browser::NavigateParams p(MakeNavigateParams()); |
176 p.disposition = SINGLETON_TAB; | 225 p.disposition = SINGLETON_TAB; |
(...skipping 962 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1139 content::NOTIFICATION_LOAD_STOP, NotificationService::AllSources()); | 1188 content::NOTIFICATION_LOAD_STOP, NotificationService::AllSources()); |
1140 browser()->ShowDownloadsTab(); | 1189 browser()->ShowDownloadsTab(); |
1141 observer.Wait(); | 1190 observer.Wait(); |
1142 } | 1191 } |
1143 EXPECT_EQ(1, browser()->tab_count()); | 1192 EXPECT_EQ(1, browser()->tab_count()); |
1144 EXPECT_EQ(GURL(chrome::kChromeUIDownloadsURL), | 1193 EXPECT_EQ(GURL(chrome::kChromeUIDownloadsURL), |
1145 browser()->GetSelectedTabContents()->GetURL()); | 1194 browser()->GetSelectedTabContents()->GetURL()); |
1146 } | 1195 } |
1147 | 1196 |
1148 } // namespace | 1197 } // namespace |
OLD | NEW |