| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "base/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/file_path.h" | 6 #include "base/file_path.h" |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/browser/browser_process.h" | 8 #include "chrome/browser/browser_process.h" |
| 9 #include "chrome/browser/defaults.h" | 9 #include "chrome/browser/defaults.h" |
| 10 #include "chrome/browser/first_run/first_run.h" | 10 #include "chrome/browser/first_run/first_run.h" |
| (...skipping 369 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 380 | 380 |
| 381 // The first tab should have 'url' as its url. | 381 // The first tab should have 'url' as its url. |
| 382 ASSERT_TRUE(new_browser); | 382 ASSERT_TRUE(new_browser); |
| 383 EXPECT_EQ(url, chrome::GetWebContentsAt(new_browser, 0)->GetURL()); | 383 EXPECT_EQ(url, chrome::GetWebContentsAt(new_browser, 0)->GetURL()); |
| 384 } | 384 } |
| 385 #endif // !OS_CHROMEOS | 385 #endif // !OS_CHROMEOS |
| 386 | 386 |
| 387 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, RestoreForeignTab) { | 387 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, RestoreForeignTab) { |
| 388 GURL url1("http://google.com"); | 388 GURL url1("http://google.com"); |
| 389 GURL url2("http://google2.com"); | 389 GURL url2("http://google2.com"); |
| 390 TabNavigation nav1(0, url1, content::Referrer(), ASCIIToUTF16("one"), | 390 TabNavigation nav1 = TabNavigation::CreateForTest(url1.spec(), "one"); |
| 391 std::string(), content::PAGE_TRANSITION_TYPED); | 391 TabNavigation nav2 = TabNavigation::CreateForTest(url2.spec(), "two"); |
| 392 TabNavigation nav2(0, url2, content::Referrer(), ASCIIToUTF16("two"), | 392 nav2.SetIsOverridingUserAgentForTest(true); |
| 393 std::string(), content::PAGE_TRANSITION_TYPED); | |
| 394 | 393 |
| 395 // Set up the restore data. | 394 // Set up the restore data. |
| 396 SessionTab tab; | 395 SessionTab tab; |
| 397 tab.tab_visual_index = 0; | 396 tab.tab_visual_index = 0; |
| 398 tab.current_navigation_index = 1; | 397 tab.current_navigation_index = 1; |
| 399 tab.pinned = false; | 398 tab.pinned = false; |
| 400 tab.navigations.push_back(nav1); | 399 tab.navigations.push_back(nav1); |
| 401 tab.navigations.push_back(nav2); | 400 tab.navigations.push_back(nav2); |
| 402 tab.user_agent_override = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.19" | 401 tab.user_agent_override = "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/535.19" |
| 403 " (KHTML, like Gecko) Chrome/18.0.1025.45 Safari/535.19"; | 402 " (KHTML, like Gecko) Chrome/18.0.1025.45 Safari/535.19"; |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 443 web_contents = chrome::GetWebContentsAt(new_browser, 0); | 442 web_contents = chrome::GetWebContentsAt(new_browser, 0); |
| 444 VerifyNavigationEntries(web_contents->GetController(), url1, url2); | 443 VerifyNavigationEntries(web_contents->GetController(), url1, url2); |
| 445 ASSERT_EQ(tab.user_agent_override, web_contents->GetUserAgentOverride()); | 444 ASSERT_EQ(tab.user_agent_override, web_contents->GetUserAgentOverride()); |
| 446 } | 445 } |
| 447 | 446 |
| 448 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, RestoreForeignSession) { | 447 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, RestoreForeignSession) { |
| 449 Profile* profile = browser()->profile(); | 448 Profile* profile = browser()->profile(); |
| 450 | 449 |
| 451 GURL url1("http://google.com"); | 450 GURL url1("http://google.com"); |
| 452 GURL url2("http://google2.com"); | 451 GURL url2("http://google2.com"); |
| 453 TabNavigation nav1(0, url1, content::Referrer(), ASCIIToUTF16("one"), | 452 TabNavigation nav1 = TabNavigation::CreateForTest(url1.spec(), "one"); |
| 454 std::string(), content::PAGE_TRANSITION_TYPED); | 453 TabNavigation nav2 = TabNavigation::CreateForTest(url2.spec(), "two"); |
| 455 TabNavigation nav2(0, url2, content::Referrer(), ASCIIToUTF16("two"), | |
| 456 std::string(), content::PAGE_TRANSITION_TYPED); | |
| 457 nav1.set_is_overriding_user_agent(false); | |
| 458 nav2.set_is_overriding_user_agent(true); | |
| 459 | 454 |
| 460 // Set up the restore data -- one window with two tabs. | 455 // Set up the restore data -- one window with two tabs. |
| 461 std::vector<const SessionWindow*> session; | 456 std::vector<const SessionWindow*> session; |
| 462 SessionWindow window; | 457 SessionWindow window; |
| 463 SessionTab tab1; | 458 SessionTab tab1; |
| 464 tab1.tab_visual_index = 0; | 459 tab1.tab_visual_index = 0; |
| 465 tab1.current_navigation_index = 0; | 460 tab1.current_navigation_index = 0; |
| 466 tab1.pinned = true; | 461 tab1.pinned = true; |
| 467 tab1.navigations.push_back(nav1); | 462 tab1.navigations.push_back(nav1); |
| 468 tab1.user_agent_override = "user_agent_override"; | 463 tab1.user_agent_override = "user_agent_override"; |
| (...skipping 23 matching lines...) Expand all Loading... |
| 492 ASSERT_EQ(url1, web_contents_1->GetURL()); | 487 ASSERT_EQ(url1, web_contents_1->GetURL()); |
| 493 ASSERT_EQ(url2, web_contents_2->GetURL()); | 488 ASSERT_EQ(url2, web_contents_2->GetURL()); |
| 494 | 489 |
| 495 // Check user agent override state. | 490 // Check user agent override state. |
| 496 ASSERT_EQ(tab1.user_agent_override, web_contents_1->GetUserAgentOverride()); | 491 ASSERT_EQ(tab1.user_agent_override, web_contents_1->GetUserAgentOverride()); |
| 497 ASSERT_EQ(tab2.user_agent_override, web_contents_2->GetUserAgentOverride()); | 492 ASSERT_EQ(tab2.user_agent_override, web_contents_2->GetUserAgentOverride()); |
| 498 | 493 |
| 499 content::NavigationEntry* entry = | 494 content::NavigationEntry* entry = |
| 500 web_contents_1->GetController().GetActiveEntry(); | 495 web_contents_1->GetController().GetActiveEntry(); |
| 501 ASSERT_TRUE(entry); | 496 ASSERT_TRUE(entry); |
| 502 ASSERT_EQ(nav1.is_overriding_user_agent(), entry->GetIsOverridingUserAgent()); | 497 ASSERT_EQ(nav1.GetIsOverridingUserAgentForTest(), |
| 498 entry->GetIsOverridingUserAgent()); |
| 503 | 499 |
| 504 entry = web_contents_2->GetController().GetActiveEntry(); | 500 entry = web_contents_2->GetController().GetActiveEntry(); |
| 505 ASSERT_TRUE(entry); | 501 ASSERT_TRUE(entry); |
| 506 ASSERT_EQ(nav2.is_overriding_user_agent(), entry->GetIsOverridingUserAgent()); | 502 ASSERT_EQ(nav2.GetIsOverridingUserAgentForTest(), |
| 503 entry->GetIsOverridingUserAgent()); |
| 507 | 504 |
| 508 // The SessionWindow destructor deletes the tabs, so we have to clear them | 505 // The SessionWindow destructor deletes the tabs, so we have to clear them |
| 509 // here to avoid a crash. | 506 // here to avoid a crash. |
| 510 window.tabs.clear(); | 507 window.tabs.clear(); |
| 511 } | 508 } |
| 512 | 509 |
| 513 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, Basic) { | 510 IN_PROC_BROWSER_TEST_F(SessionRestoreTest, Basic) { |
| 514 ui_test_utils::NavigateToURL(browser(), url1_); | 511 ui_test_utils::NavigateToURL(browser(), url1_); |
| 515 ui_test_utils::NavigateToURL(browser(), url2_); | 512 ui_test_utils::NavigateToURL(browser(), url2_); |
| 516 | 513 |
| (...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 842 ASSERT_EQ(1u, BrowserList::size()); | 839 ASSERT_EQ(1u, BrowserList::size()); |
| 843 ASSERT_EQ(url1_, chrome::GetActiveWebContents(new_browser)->GetURL()); | 840 ASSERT_EQ(url1_, chrome::GetActiveWebContents(new_browser)->GetURL()); |
| 844 content::NavigationController* new_controller = | 841 content::NavigationController* new_controller = |
| 845 &chrome::GetActiveWebContents(new_browser)->GetController(); | 842 &chrome::GetActiveWebContents(new_browser)->GetController(); |
| 846 ASSERT_TRUE(new_controller->GetDefaultSessionStorageNamespace()); | 843 ASSERT_TRUE(new_controller->GetDefaultSessionStorageNamespace()); |
| 847 std::string restored_session_storage_persistent_id = | 844 std::string restored_session_storage_persistent_id = |
| 848 new_controller->GetDefaultSessionStorageNamespace()->persistent_id(); | 845 new_controller->GetDefaultSessionStorageNamespace()->persistent_id(); |
| 849 EXPECT_EQ(session_storage_persistent_id, | 846 EXPECT_EQ(session_storage_persistent_id, |
| 850 restored_session_storage_persistent_id); | 847 restored_session_storage_persistent_id); |
| 851 } | 848 } |
| OLD | NEW |