diff options
Diffstat (limited to 'chrome/browser/errorpage_browsertest.cc')
-rw-r--r-- | chrome/browser/errorpage_browsertest.cc | 48 |
1 files changed, 24 insertions, 24 deletions
diff --git a/chrome/browser/errorpage_browsertest.cc b/chrome/browser/errorpage_browsertest.cc index 2a5a195..338c521 100644 --- a/chrome/browser/errorpage_browsertest.cc +++ b/chrome/browser/errorpage_browsertest.cc @@ -14,6 +14,17 @@ namespace { class ErrorPageBrowserTest : public InProcessBrowserTest { + protected: + // We're generally not sure what the title will be exactly (it comes from + // external source, and may be localized etc), but it will alway contain the + // hostname, so we check for that. + // For a proper way to do that http://crbug.com/18365 has been filed. + void AssertCurrentTabTitleContains(const std::string& text) { + string16 title; + EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); + EXPECT_NE(string16::npos, title.find(ASCIIToUTF16(text))) << + "could not find \"" << text << "\" in \"" << title << "\""; + } }; using ui_test_utils::NavigateToURL; @@ -24,27 +35,23 @@ using ui_test_utils::NavigateToURLBlockUntilNavigationsComplete; IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_Basic) { GURL test_url(URLRequestFailedDnsJob::kTestUrl); - string16 title; - NavigateToURLBlockUntilNavigationsComplete(browser(), test_url, 2); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); } // Test that a DNS error occuring in the main frame does not result in an // additional session history entry. IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBack1) { GURL test_url(URLRequestFailedDnsJob::kTestUrl); - string16 title; NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title2.html")); NavigateToURLBlockUntilNavigationsComplete(browser(), test_url, 2); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationInCurrentTab(browser())); + string16 title; ASSERT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); EXPECT_EQ(ASCIIToUTF16("Title Of Awesomeness"), title); } @@ -53,22 +60,20 @@ IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBack1) { // additional session history entry. IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBack2) { GURL test_url(URLRequestFailedDnsJob::kTestUrl); - string16 title; NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title2.html")); NavigateToURLBlockUntilNavigationsComplete(browser(), test_url, 2); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title3.html")); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationsInCurrentTab(browser(), 2)); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationInCurrentTab(browser())); + string16 title; ASSERT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); EXPECT_EQ(ASCIIToUTF16("Title Of Awesomeness"), title); } @@ -77,54 +82,49 @@ IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBack2) { // additional session history entry. IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBackAndForward1) { GURL test_url(URLRequestFailedDnsJob::kTestUrl); - string16 title; NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title2.html")); NavigateToURLBlockUntilNavigationsComplete(browser(), test_url, 2); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title3.html")); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationsInCurrentTab(browser(), 2)); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationInCurrentTab(browser())); browser()->GoForward(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationsInCurrentTab(browser(), 2)); + AssertCurrentTabTitleContains(test_url.host()); } // Test that a DNS error occuring in the main frame does not result in an // additional session history entry. IN_PROC_BROWSER_TEST_F(ErrorPageBrowserTest, DNSError_GoBackAndForward2) { GURL test_url(URLRequestFailedDnsJob::kTestUrl); - string16 title; NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title3.html")); NavigateToURLBlockUntilNavigationsComplete(browser(), test_url, 2); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); NavigateToURL(browser(), URLRequestMockHTTPJob::GetMockUrl(L"title2.html")); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationsInCurrentTab(browser(), 2)); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); browser()->GoBack(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationInCurrentTab(browser())); browser()->GoForward(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationsInCurrentTab(browser(), 2)); - EXPECT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); - EXPECT_EQ(ASCIIToUTF16("Mock Link Doctor"), title); + AssertCurrentTabTitleContains(test_url.host()); browser()->GoForward(CURRENT_TAB); ASSERT_TRUE(ui_test_utils::WaitForNavigationInCurrentTab(browser())); + string16 title; ASSERT_TRUE(ui_test_utils::GetCurrentTabTitle(browser(), &title)); EXPECT_EQ(ASCIIToUTF16("Title Of Awesomeness"), title); } |