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

Unified Diff: ios/chrome/browser/tabs/tab_model_unittest.mm

Issue 2720983002: Remove windowName from CRWSessionController. (Closed)
Patch Set: Address comments. Created 3 years, 10 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
« no previous file with comments | « ios/chrome/browser/tabs/tab_model.mm ('k') | ios/chrome/browser/tabs/tab_unittest.mm » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ios/chrome/browser/tabs/tab_model_unittest.mm
diff --git a/ios/chrome/browser/tabs/tab_model_unittest.mm b/ios/chrome/browser/tabs/tab_model_unittest.mm
index e06edc0dcbc67321084cd051864c13acc2411893..3ae0cf90422e148070ada5ed78c914bdd030a0af 100644
--- a/ios/chrome/browser/tabs/tab_model_unittest.mm
+++ b/ios/chrome/browser/tabs/tab_model_unittest.mm
@@ -54,24 +54,22 @@ using web::WebStateImpl;
@interface TabTest : Tab
-- (instancetype)initWithWindowName:(NSString*)windowName
- lastVisitedTimestamp:(double)lastVisitedTimestamp
- browserState:(ios::ChromeBrowserState*)browserState
- tabModel:(TabModel*)tabModel;
+- (instancetype)initWithBrowserState:(ios::ChromeBrowserState*)browserState
+ lastVisitedTimestamp:(double)lastVisitedTimestamp
+ tabModel:(TabModel*)tabModel;
@end
@implementation TabTest
-- (instancetype)initWithWindowName:(NSString*)windowName
- lastVisitedTimestamp:(double)lastVisitedTimestamp
- browserState:(ios::ChromeBrowserState*)browserState
- tabModel:(TabModel*)tabModel {
+- (instancetype)initWithBrowserState:(ios::ChromeBrowserState*)browserState
+ lastVisitedTimestamp:(double)lastVisitedTimestamp
+ tabModel:(TabModel*)tabModel {
id webControllerMock =
[OCMockObject niceMockForClass:[CRWWebController class]];
auto webStateImpl = base::MakeUnique<WebStateImpl>(browserState);
webStateImpl->SetWebController(webControllerMock);
- webStateImpl->GetNavigationManagerImpl().InitializeSession(windowName, NO);
+ webStateImpl->GetNavigationManagerImpl().InitializeSession(NO);
[webStateImpl->GetNavigationManagerImpl().GetSessionController()
setLastVisitedTimestamp:lastVisitedTimestamp];
@@ -157,11 +155,10 @@ class TabModelTest : public PlatformTest {
}
protected:
- std::unique_ptr<WebStateImpl> CreateWebState(NSString* windowName,
- NSString* opener,
+ std::unique_ptr<WebStateImpl> CreateWebState(NSString* opener,
NSInteger index) {
auto webState = base::MakeUnique<WebStateImpl>(chrome_browser_state_.get());
- webState->GetNavigationManagerImpl().InitializeSession(windowName, NO);
+ webState->GetNavigationManagerImpl().InitializeSession(NO);
if ([opener length] != 0) {
// Duplicate code from Tab initializer. Will be removed once the code
// is rewritten to remove the use of internal ios/web/ API (see issue
@@ -174,12 +171,12 @@ class TabModelTest : public PlatformTest {
return webState;
}
- std::unique_ptr<WebStateImpl> CreateWebState(NSString* windowName) {
- return CreateWebState(windowName, @"", -1);
+ std::unique_ptr<WebStateImpl> CreateWebState() {
+ return CreateWebState(@"", -1);
}
std::unique_ptr<WebStateImpl> CreateChildWebState(Tab* parent) {
- return CreateWebState([parent windowName], parent.tabId, -1);
+ return CreateWebState(parent.tabId, -1);
}
void RestoreSession(SessionWindowIOS* window) {
@@ -190,9 +187,9 @@ class TabModelTest : public PlatformTest {
SessionWindowIOS* CreateSessionWindow(int entries) {
SessionWindowIOS* window = [[SessionWindowIOS alloc] init];
for (int i = 0; i < entries; i++) {
- NSString* windowName = [NSString stringWithFormat:@"window %d", i + 1];
- [window addSerializedSessionStorage:CreateWebState(windowName)
- ->BuildSessionStorage()];
+ CRWSessionStorage* session_storage =
+ CreateWebState()->BuildSessionStorage();
+ [window addSerializedSessionStorage:session_storage];
}
if (entries)
[window setSelectedIndex:1];
@@ -214,7 +211,6 @@ TEST_F(TabModelTest, IsEmpty) {
EXPECT_TRUE([tab_model_ isEmpty]);
[tab_model_ insertTabWithURL:kURL
referrer:kReferrer
- windowName:@"window 1"
opener:nil
atIndex:0];
ASSERT_EQ(1U, [tab_model_ count]);
@@ -222,93 +218,89 @@ TEST_F(TabModelTest, IsEmpty) {
}
TEST_F(TabModelTest, InsertUrlSingle) {
- [tab_model_ insertTabWithURL:kURL
- referrer:kReferrer
- windowName:@"window 1"
- opener:nil
- atIndex:0];
+ Tab* tab = [tab_model_ insertTabWithURL:kURL
+ referrer:kReferrer
+ opener:nil
+ atIndex:0];
ASSERT_EQ(1U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
+ EXPECT_NSEQ(tab, [tab_model_ tabAtIndex:0]);
}
TEST_F(TabModelTest, InsertUrlMultiple) {
- [tab_model_ insertTabWithURL:kURL
- referrer:kReferrer
- windowName:@"window 1"
- opener:nil
- atIndex:0];
- [tab_model_ insertTabWithURL:kURL
- referrer:kReferrer
- windowName:@"window 2"
- opener:nil
- atIndex:0];
- [tab_model_ insertTabWithURL:kURL
- referrer:kReferrer
- windowName:@"window 3"
- opener:nil
- atIndex:1];
+ Tab* tab0 = [tab_model_ insertTabWithURL:kURL
+ referrer:kReferrer
+ opener:nil
+ atIndex:0];
+ Tab* tab1 = [tab_model_ insertTabWithURL:kURL
+ referrer:kReferrer
+ opener:nil
+ atIndex:0];
+ Tab* tab2 = [tab_model_ insertTabWithURL:kURL
+ referrer:kReferrer
+ opener:nil
+ atIndex:1];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:2]);
}
TEST_F(TabModelTest, AppendUrlSingle) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
+ Tab* tab = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
ASSERT_EQ(1U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
+ EXPECT_NSEQ(tab, [tab_model_ tabAtIndex:0]);
}
TEST_F(TabModelTest, AppendUrlMultiple) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ Tab* tab0 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab1 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab2 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:2]);
}
TEST_F(TabModelTest, CloseTabAtIndexBeginning) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab1 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab2 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ closeTabAtIndex:0];
ASSERT_EQ(2U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
}
TEST_F(TabModelTest, CloseTabAtIndexMiddle) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ Tab* tab0 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab2 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ closeTabAtIndex:1];
ASSERT_EQ(2U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
}
TEST_F(TabModelTest, CloseTabAtIndexLast) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ Tab* tab0 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab1 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ closeTabAtIndex:2];
ASSERT_EQ(2U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:1] windowName]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:1]);
}
TEST_F(TabModelTest, CloseTabAtIndexOnlyOne) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ closeTabAtIndex:0];
@@ -316,92 +308,65 @@ TEST_F(TabModelTest, CloseTabAtIndexOnlyOne) {
}
TEST_F(TabModelTest, RestoreSessionOnNTPTest) {
- [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
- referrer:kEmptyReferrer
- windowName:@"old window"
- opener:nil
- atIndex:0];
+ Tab* tab = [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
+ referrer:kEmptyReferrer
+ opener:nil
+ atIndex:0];
base::scoped_nsobject<SessionWindowIOS> window(CreateSessionWindow(3));
RestoreSession(window.get());
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ currentTab] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ([tab_model_ tabAtIndex:1], [tab_model_ currentTab]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:2]);
}
TEST_F(TabModelTest, RestoreSessionOn2NtpTest) {
- [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
- referrer:kEmptyReferrer
- windowName:@"old window 1"
- opener:nil
- atIndex:0];
- [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
- referrer:kEmptyReferrer
- windowName:@"old window 2"
- opener:nil
- atIndex:1];
+ Tab* tab0 = [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
+ referrer:kEmptyReferrer
+ opener:nil
+ atIndex:0];
+ Tab* tab1 = [tab_model_ insertTabWithURL:GURL(kChromeUINewTabURL)
+ referrer:kEmptyReferrer
+ opener:nil
+ atIndex:1];
base::scoped_nsobject<SessionWindowIOS> window(CreateSessionWindow(3));
RestoreSession(window.get());
ASSERT_EQ(5U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ currentTab] windowName]);
- EXPECT_NSEQ(@"old window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"old window 2", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:2] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:3] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:4] windowName]);
+ EXPECT_NSEQ([tab_model_ tabAtIndex:3], [tab_model_ currentTab]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSNE(tab0, [tab_model_ tabAtIndex:2]);
+ EXPECT_NSNE(tab0, [tab_model_ tabAtIndex:3]);
+ EXPECT_NSNE(tab0, [tab_model_ tabAtIndex:4]);
+ EXPECT_NSNE(tab1, [tab_model_ tabAtIndex:2]);
+ EXPECT_NSNE(tab1, [tab_model_ tabAtIndex:3]);
+ EXPECT_NSNE(tab1, [tab_model_ tabAtIndex:4]);
}
TEST_F(TabModelTest, RestoreSessionOnAnyTest) {
- [tab_model_ insertTabWithURL:kURL
- referrer:kEmptyReferrer
- windowName:@"old window 1"
- opener:nil
- atIndex:0];
+ Tab* tab = [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ opener:nil
+ atIndex:0];
base::scoped_nsobject<SessionWindowIOS> window(CreateSessionWindow(3));
RestoreSession(window.get());
ASSERT_EQ(4U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ currentTab] windowName]);
- EXPECT_NSEQ(@"old window 1", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:2] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:3] windowName]);
-}
-
-TEST_F(TabModelTest, TabForWindowName) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:GURL("https://www.some.url2.com")
- referrer:kReferrer2
- windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
-
- Tab* tab = [tab_model_ tabWithWindowName:@"window 2"];
-
- EXPECT_NSEQ([tab windowName], @"window 2");
- EXPECT_EQ(tab.url, GURL("https://www.some.url2.com/"));
-}
-
-TEST_F(TabModelTest, TabForWindowNameNotFound) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:GURL("https://www.some.url2.com")
- referrer:kReferrer2
- windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
-
- Tab* tab = [tab_model_ tabWithWindowName:@"window not found"];
-
- EXPECT_EQ(nil, tab);
+ EXPECT_NSEQ([tab_model_ tabAtIndex:2], [tab_model_ currentTab]);
+ EXPECT_NSEQ(tab, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:2]);
+ EXPECT_NSNE(tab, [tab_model_ tabAtIndex:3]);
}
TEST_F(TabModelTest, CloseAllTabs) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ addTabWithURL:GURL("https://www.some.url2.com")
- referrer:kReferrer2
- windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ referrer:kReferrer2];
+ [tab_model_ addTabWithURL:kURL referrer:kReferrer];
[tab_model_ closeAllTabs];
@@ -418,9 +383,8 @@ TEST_F(TabModelTest, InsertWithSessionController) {
EXPECT_EQ([tab_model_ count], 0U);
EXPECT_TRUE([tab_model_ isEmpty]);
- Tab* new_tab =
- [tab_model_ insertTabWithWebState:CreateWebState(@"window", @"opener", -1)
- atIndex:0];
+ Tab* new_tab = [tab_model_ insertTabWithWebState:CreateWebState(@"opener", -1)
+ atIndex:0];
EXPECT_EQ([tab_model_ count], 1U);
[tab_model_ setCurrentTab:new_tab];
Tab* current_tab = [tab_model_ currentTab];
@@ -429,19 +393,19 @@ TEST_F(TabModelTest, InsertWithSessionController) {
TEST_F(TabModelTest, OpenerOfTab) {
// Start off with a couple tabs.
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// Create parent tab.
- Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
// Create child tab.
Tab* child_tab =
[tab_model_ insertTabWithWebState:CreateChildWebState(parent_tab)
atIndex:[tab_model_ count]];
// Create another unrelated tab.
- Tab* another_tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* another_tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
// Create another child of the first tab.
@@ -468,33 +432,33 @@ TEST_F(TabModelTest, OpenersEmptyModel) {
TEST_F(TabModelTest, OpenersNothingOpenedGeneral) {
// Start with a few tabs.
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
- Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// All should fail since this hasn't opened anything else.
EXPECT_FALSE([tab_model_ nextTabWithOpener:tab afterTab:nil]);
EXPECT_FALSE([tab_model_ lastTabWithOpener:tab]);
// Add more items to the tab, expect the same results.
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
EXPECT_FALSE([tab_model_ nextTabWithOpener:tab afterTab:nil]);
EXPECT_FALSE([tab_model_ lastTabWithOpener:tab]);
}
TEST_F(TabModelTest, OpenersNothingOpenedFirst) {
// Our tab is first.
- Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// All should fail since this hasn't opened anything else.
EXPECT_FALSE([tab_model_ nextTabWithOpener:tab afterTab:nil]);
@@ -503,9 +467,9 @@ TEST_F(TabModelTest, OpenersNothingOpenedFirst) {
TEST_F(TabModelTest, OpenersNothingOpenedLast) {
// Our tab is last.
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ Tab* tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
// All should fail since this hasn't opened anything else.
@@ -514,25 +478,25 @@ TEST_F(TabModelTest, OpenersNothingOpenedLast) {
}
TEST_F(TabModelTest, OpenersChildTabBeforeOpener) {
- Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
// Insert child at start
[tab_model_ insertTabWithWebState:CreateChildWebState(parent_tab) atIndex:0];
// Insert a few more between them.
- [tab_model_ insertTabWithWebState:CreateWebState(@"window") atIndex:1];
- [tab_model_ insertTabWithWebState:CreateWebState(@"window") atIndex:1];
+ [tab_model_ insertTabWithWebState:CreateWebState() atIndex:1];
+ [tab_model_ insertTabWithWebState:CreateWebState() atIndex:1];
EXPECT_FALSE([tab_model_ nextTabWithOpener:parent_tab afterTab:nil]);
EXPECT_FALSE([tab_model_ lastTabWithOpener:parent_tab]);
}
TEST_F(TabModelTest, OpenersChildTabAfterOpener) {
- Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState(@"window")
+ Tab* parent_tab = [tab_model_ insertTabWithWebState:CreateWebState()
atIndex:[tab_model_ count]];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// Insert two children at end.
Tab* child_tab1 =
[tab_model_ insertTabWithWebState:CreateChildWebState(parent_tab)
@@ -549,108 +513,99 @@ TEST_F(TabModelTest, OpenersChildTabAfterOpener) {
TEST_F(TabModelTest, AddWithOrderController) {
// Create a few tabs with the controller at the front.
- Tab* parent =
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ Tab* parent = [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// Add a new tab, it should be added behind the parent.
- Tab* child = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:NO];
+ Tab* child =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:parent], 0U);
EXPECT_EQ([tab_model_ indexOfTab:child], 1U);
// Add another new tab without a parent, should go at the end.
- Tab* tab = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:nil
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:NO];
+ Tab* tab =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:nil
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:tab], [tab_model_ count] - 1);
// Same for a tab that's not opened via a LINK transition.
- Tab* tab2 = [tab_model_ insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_TYPED
- windowName:nil
- opener:nil
- openedByDOM:NO
- atIndex:[tab_model_ count]
- inBackground:NO];
+ Tab* tab2 = [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_TYPED
+ opener:nil
+ openedByDOM:NO
+ atIndex:[tab_model_ count]
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:tab2], [tab_model_ count] - 1);
// Add a tab in the background. It should appear behind the opening tab.
- Tab* tab3 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:tab
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:YES];
+ Tab* tab3 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:tab
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:YES];
EXPECT_EQ([tab_model_ indexOfTab:tab3], [tab_model_ indexOfTab:tab] + 1);
// Add another background tab behind the one we just opened.
- Tab* tab4 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:tab3
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:YES];
+ Tab* tab4 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:tab3
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:YES];
EXPECT_EQ([tab_model_ indexOfTab:tab4], [tab_model_ indexOfTab:tab3] + 1);
}
TEST_F(TabModelTest, AddWithOrderControllerAndGrouping) {
// Create a few tabs with the controller at the front.
- Tab* parent =
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ Tab* parent = [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// Force the history to update, as it is used to determine grouping.
ASSERT_TRUE([parent navigationManager]);
[[parent navigationManager]->GetSessionController() commitPendingItem];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
ASSERT_TRUE(chrome_browser_state_->CreateHistoryService(true));
// Add a new tab, it should be added behind the parent.
- Tab* child1 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:NO];
+ Tab* child1 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:parent], 0U);
EXPECT_EQ([tab_model_ indexOfTab:child1], 1U);
// Add a second child tab in the background. It should be added behind the
// first child.
- Tab* child2 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:YES];
+ Tab* child2 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:YES];
EXPECT_EQ([tab_model_ indexOfTab:child2], 2U);
// Navigate the parent tab to a new URL. It should not change any ordering.
@@ -664,28 +619,26 @@ TEST_F(TabModelTest, AddWithOrderControllerAndGrouping) {
// Add a new tab. It should be added behind the parent. It should not be added
// after the previous two children.
- Tab* child3 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:NO];
+ Tab* child3 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:child3], 1U);
// Add a fourt child tab in the background. It should be added behind the
// third child.
- Tab* child4 = [tab_model_
- insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:TabModelConstants::kTabPositionAutomatically
- inBackground:YES];
+ Tab* child4 =
+ [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:TabModelConstants::kTabPositionAutomatically
+ inBackground:YES];
EXPECT_EQ([tab_model_ indexOfTab:child4], 2U);
// The first two children should have been moved to the right.
@@ -693,60 +646,55 @@ TEST_F(TabModelTest, AddWithOrderControllerAndGrouping) {
EXPECT_EQ([tab_model_ indexOfTab:child2], 4U);
// Now add a non-owned tab and make sure it is added at the end.
- Tab* nonChild =
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ Tab* nonChild = [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
EXPECT_EQ([tab_model_ indexOfTab:nonChild], [tab_model_ count] - 1);
}
TEST_F(TabModelTest, AddWithLinkTransitionAndIndex) {
// Create a few tabs with the controller at the front.
- Tab* parent =
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ Tab* parent = [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
// Force the history to update, as it is used to determine grouping.
ASSERT_TRUE([parent navigationManager]);
[[parent navigationManager]->GetSessionController() commitPendingItem];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
- [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer windowName:nil];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
+ [tab_model_ addTabWithURL:kURL referrer:kEmptyReferrer];
ASSERT_TRUE(chrome_browser_state_->CreateHistoryService(true));
// Add a new tab, it should be added before the parent since the index
// parameter has been specified with a valid value.
- Tab* child1 = [tab_model_ insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:0
- inBackground:NO];
+ Tab* child1 = [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:0
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:parent], 1U);
EXPECT_EQ([tab_model_ indexOfTab:child1], 0U);
// Add a new tab, it should be added at the beginning of the stack because
// the index parameter has been specified with a valid value.
- Tab* child2 = [tab_model_ insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:0
- inBackground:NO];
+ Tab* child2 = [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:0
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:parent], 2U);
EXPECT_EQ([tab_model_ indexOfTab:child1], 1U);
EXPECT_EQ([tab_model_ indexOfTab:child2], 0U);
// Add a new tab, it should be added at position 1 because the index parameter
// has been specified with a valid value.
- Tab* child3 = [tab_model_ insertOrUpdateTabWithURL:kURL
- referrer:kEmptyReferrer
- transition:ui::PAGE_TRANSITION_LINK
- windowName:nil
- opener:parent
- openedByDOM:NO
- atIndex:1
- inBackground:NO];
+ Tab* child3 = [tab_model_ insertTabWithURL:kURL
+ referrer:kEmptyReferrer
+ transition:ui::PAGE_TRANSITION_LINK
+ opener:parent
+ openedByDOM:NO
+ atIndex:1
+ inBackground:NO];
EXPECT_EQ([tab_model_ indexOfTab:parent], 3U);
EXPECT_EQ([tab_model_ indexOfTab:child1], 2U);
EXPECT_EQ([tab_model_ indexOfTab:child3], 1U);
@@ -754,59 +702,59 @@ TEST_F(TabModelTest, AddWithLinkTransitionAndIndex) {
}
TEST_F(TabModelTest, MoveTabs) {
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 2"];
- [tab_model_ addTabWithURL:kURL referrer:kReferrer windowName:@"window 3"];
+ Tab* tab0 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab1 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
+ Tab* tab2 = [tab_model_ addTabWithURL:kURL referrer:kReferrer];
// Basic sanity checks before moving on.
ASSERT_EQ(3U, [tab_model_ count]);
- ASSERT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:0] windowName]);
- ASSERT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:1] windowName]);
- ASSERT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:2] windowName]);
+ ASSERT_NSEQ(tab0, [tab_model_ tabAtIndex:0]);
+ ASSERT_NSEQ(tab1, [tab_model_ tabAtIndex:1]);
+ ASSERT_NSEQ(tab2, [tab_model_ tabAtIndex:2]);
// Move a tab from index 1 to index 0 (move tab left by one).
[tab_model_observer_ setTabMovedWasCalled:NO];
[tab_model_ moveTab:[tab_model_ tabAtIndex:1] toIndex:0];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:2]);
EXPECT_TRUE([tab_model_observer_ tabMovedWasCalled]);
// Move a tab from index 1 to index 2 (move tab right by one).
[tab_model_observer_ setTabMovedWasCalled:NO];
[tab_model_ moveTab:[tab_model_ tabAtIndex:1] toIndex:2];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:2]);
EXPECT_TRUE([tab_model_observer_ tabMovedWasCalled]);
// Move a tab from index 0 to index 2 (move tab right by more than one).
[tab_model_observer_ setTabMovedWasCalled:NO];
[tab_model_ moveTab:[tab_model_ tabAtIndex:0] toIndex:2];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:2]);
EXPECT_TRUE([tab_model_observer_ tabMovedWasCalled]);
// Move a tab from index 2 to index 0 (move tab left by more than one).
[tab_model_observer_ setTabMovedWasCalled:NO];
[tab_model_ moveTab:[tab_model_ tabAtIndex:2] toIndex:0];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:2]);
EXPECT_TRUE([tab_model_observer_ tabMovedWasCalled]);
// Move a tab from index 2 to index 2 (move tab to the same index).
[tab_model_observer_ setTabMovedWasCalled:NO];
[tab_model_ moveTab:[tab_model_ tabAtIndex:2] toIndex:2];
ASSERT_EQ(3U, [tab_model_ count]);
- EXPECT_NSEQ(@"window 2", [[tab_model_ tabAtIndex:0] windowName]);
- EXPECT_NSEQ(@"window 3", [[tab_model_ tabAtIndex:1] windowName]);
- EXPECT_NSEQ(@"window 1", [[tab_model_ tabAtIndex:2] windowName]);
+ EXPECT_NSEQ(tab1, [tab_model_ tabAtIndex:0]);
+ EXPECT_NSEQ(tab2, [tab_model_ tabAtIndex:1]);
+ EXPECT_NSEQ(tab0, [tab_model_ tabAtIndex:2]);
EXPECT_FALSE([tab_model_observer_ tabMovedWasCalled]);
}
@@ -814,9 +762,8 @@ TEST_F(TabModelTest, SetParentModel) {
// Create a tab without a parent model and make sure it doesn't crash. Then
// set its parent TabModel and make sure that works as well.
base::scoped_nsobject<TabTest> tab([[TabTest alloc]
- initWithWindowName:@"parentless"
+ initWithBrowserState:chrome_browser_state_.get()
lastVisitedTimestamp:100
- browserState:chrome_browser_state_.get()
tabModel:nil]);
EXPECT_TRUE([tab parentTabModel] == nil);
[tab_model_ insertTab:tab atIndex:0];
@@ -845,15 +792,13 @@ TEST_F(TabModelTest, PersistSelectionChange) {
sessionService:[SessionServiceIOS sharedService]
browserState:chrome_browser_state.get()]);
- [model addTabWithURL:kURL referrer:kReferrer windowName:@"window 1"];
+ [model addTabWithURL:kURL referrer:kReferrer];
[model insertTabWithURL:kURL
referrer:kReferrer
- windowName:@"window 3"
opener:[model tabAtIndex:0]
atIndex:[model count]];
[model insertTabWithURL:kURL
referrer:kReferrer
- windowName:@"window 3"
opener:[model tabAtIndex:1]
atIndex:0];
« no previous file with comments | « ios/chrome/browser/tabs/tab_model.mm ('k') | ios/chrome/browser/tabs/tab_unittest.mm » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698