| 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 <string> | 5 #include <string> |
| 6 | 6 |
| 7 #include "chrome/browser/net/url_fixer_upper.h" | 7 #include "chrome/browser/net/url_fixer_upper.h" |
| 8 #include "chrome/common/url_constants.h" | 8 #include "chrome/common/url_constants.h" |
| 9 #include "chrome/test/automation/automation_proxy.h" | 9 #include "chrome/test/automation/automation_proxy.h" |
| 10 #include "chrome/test/automation/tab_proxy.h" | 10 #include "chrome/test/automation/tab_proxy.h" |
| (...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 119 EXPECT_TRUE(digest_tab->SetAuth(username_digest_, password_)); | 119 EXPECT_TRUE(digest_tab->SetAuth(username_digest_, password_)); |
| 120 | 120 |
| 121 wstring title; | 121 wstring title; |
| 122 EXPECT_TRUE(basic_tab->GetTabTitle(&title)); | 122 EXPECT_TRUE(basic_tab->GetTabTitle(&title)); |
| 123 EXPECT_EQ(ExpectedTitleFromAuth(username_basic_, password_), title); | 123 EXPECT_EQ(ExpectedTitleFromAuth(username_basic_, password_), title); |
| 124 | 124 |
| 125 EXPECT_TRUE(digest_tab->GetTabTitle(&title)); | 125 EXPECT_TRUE(digest_tab->GetTabTitle(&title)); |
| 126 EXPECT_EQ(ExpectedTitleFromAuth(username_digest_, password_), title); | 126 EXPECT_EQ(ExpectedTitleFromAuth(username_digest_, password_), title); |
| 127 } | 127 } |
| 128 | 128 |
| 129 // Test that cancelling authentication works. | |
| 130 // Flaky, http://crbug.com/90198. | |
| 131 TEST_F(LoginPromptTest, FLAKY_TestCancelAuth) { | |
| 132 ASSERT_TRUE(test_server_.Start()); | |
| 133 | |
| 134 scoped_refptr<TabProxy> tab(GetActiveTab()); | |
| 135 ASSERT_TRUE(tab.get()); | |
| 136 | |
| 137 // First navigate to a test server page so we have something to go back to. | |
| 138 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, | |
| 139 tab->NavigateToURL(test_server_.GetURL("a"))); | |
| 140 | |
| 141 // Navigating while auth is requested is the same as cancelling. | |
| 142 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, | |
| 143 tab->NavigateToURL(test_server_.GetURL("auth-basic"))); | |
| 144 EXPECT_TRUE(tab->NeedsAuth()); | |
| 145 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, | |
| 146 tab->NavigateToURL(test_server_.GetURL("b"))); | |
| 147 EXPECT_FALSE(tab->NeedsAuth()); | |
| 148 | |
| 149 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, | |
| 150 tab->NavigateToURL(test_server_.GetURL("auth-basic"))); | |
| 151 EXPECT_TRUE(tab->NeedsAuth()); | |
| 152 EXPECT_TRUE(tab->GoBack()); // should bring us back to 'a' | |
| 153 EXPECT_FALSE(tab->NeedsAuth()); | |
| 154 | |
| 155 // Now add a page and go back, so we have something to go forward to. | |
| 156 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_SUCCESS, | |
| 157 tab->NavigateToURL(test_server_.GetURL("c"))); | |
| 158 EXPECT_TRUE(tab->GoBack()); // should bring us back to 'a' | |
| 159 | |
| 160 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, | |
| 161 tab->NavigateToURL(test_server_.GetURL("auth-basic"))); | |
| 162 EXPECT_TRUE(tab->NeedsAuth()); | |
| 163 EXPECT_TRUE(tab->GoForward()); // should bring us to 'c' | |
| 164 EXPECT_FALSE(tab->NeedsAuth()); | |
| 165 | |
| 166 // Now test that cancelling works as expected. | |
| 167 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, | |
| 168 tab->NavigateToURL(test_server_.GetURL("auth-basic"))); | |
| 169 EXPECT_TRUE(tab->NeedsAuth()); | |
| 170 EXPECT_TRUE(tab->CancelAuth()); | |
| 171 EXPECT_FALSE(tab->NeedsAuth()); | |
| 172 EXPECT_EQ(L"Denied: no auth", GetActiveTabTitle()); | |
| 173 } | |
| 174 | |
| 175 // If multiple tabs are looking for the same auth, the user should only have to | 129 // If multiple tabs are looking for the same auth, the user should only have to |
| 176 // enter it once. | 130 // enter it once. |
| 177 TEST_F(LoginPromptTest, SupplyRedundantAuths) { | 131 TEST_F(LoginPromptTest, SupplyRedundantAuths) { |
| 178 ASSERT_TRUE(test_server_.Start()); | 132 ASSERT_TRUE(test_server_.Start()); |
| 179 | 133 |
| 180 scoped_refptr<TabProxy> basic_tab1(GetActiveTab()); | 134 scoped_refptr<TabProxy> basic_tab1(GetActiveTab()); |
| 181 ASSERT_TRUE(basic_tab1.get()); | 135 ASSERT_TRUE(basic_tab1.get()); |
| 182 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, | 136 ASSERT_EQ(AUTOMATION_MSG_NAVIGATION_AUTH_NEEDED, |
| 183 basic_tab1->NavigateToURL(test_server_.GetURL("auth-basic/1"))); | 137 basic_tab1->NavigateToURL(test_server_.GetURL("auth-basic/1"))); |
| 184 EXPECT_TRUE(basic_tab1->NeedsAuth()); | 138 EXPECT_TRUE(basic_tab1->NeedsAuth()); |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 230 EXPECT_TRUE(basic_tab2->WaitForNavigation(last_navigation_time)); | 184 EXPECT_TRUE(basic_tab2->WaitForNavigation(last_navigation_time)); |
| 231 | 185 |
| 232 // Now both tabs have been denied. | 186 // Now both tabs have been denied. |
| 233 wstring title1; | 187 wstring title1; |
| 234 EXPECT_TRUE(basic_tab1->GetTabTitle(&title1)); | 188 EXPECT_TRUE(basic_tab1->GetTabTitle(&title1)); |
| 235 EXPECT_EQ(L"Denied: no auth", title1); | 189 EXPECT_EQ(L"Denied: no auth", title1); |
| 236 wstring title2; | 190 wstring title2; |
| 237 EXPECT_TRUE(basic_tab2->GetTabTitle(&title2)); | 191 EXPECT_TRUE(basic_tab2->GetTabTitle(&title2)); |
| 238 EXPECT_EQ(L"Denied: no auth", title2); | 192 EXPECT_EQ(L"Denied: no auth", title2); |
| 239 } | 193 } |
| OLD | NEW |