Index: chrome/browser/ssl/ssl_browser_tests.cc |
=================================================================== |
--- chrome/browser/ssl/ssl_browser_tests.cc (revision 116109) |
+++ chrome/browser/ssl/ssl_browser_tests.cc (working copy) |
@@ -16,16 +16,18 @@ |
#include "chrome/test/base/ui_test_utils.h" |
#include "content/browser/renderer_host/render_view_host.h" |
#include "content/browser/tab_contents/interstitial_page.h" |
-#include "content/browser/tab_contents/tab_contents.h" |
+#include "content/browser/tab_contents/navigation_controller.h" |
#include "content/public/browser/navigation_entry.h" |
#include "content/public/browser/notification_service.h" |
#include "content/public/browser/ssl_status.h" |
+#include "content/public/browser/web_contents.h" |
#include "content/public/common/security_style.h" |
#include "net/base/cert_status_flags.h" |
#include "net/test/test_server.h" |
using content::NavigationEntry; |
using content::SSLStatus; |
+using content::WebContents; |
const FilePath::CharType kDocRoot[] = FILE_PATH_LITERAL("chrome/test/data"); |
@@ -49,7 +51,7 @@ |
command_line->AppendSwitch(switches::kAllowRunningInsecureContent); |
} |
- void CheckAuthenticatedState(TabContents* tab, |
+ void CheckAuthenticatedState(WebContents* tab, |
bool displayed_insecure_content) { |
ASSERT_FALSE(tab->IsCrashed()); |
NavigationEntry* entry = tab->GetController().GetActiveEntry(); |
@@ -65,7 +67,7 @@ |
!!(entry->GetSSL().content_status & SSLStatus::RAN_INSECURE_CONTENT)); |
} |
- void CheckUnauthenticatedState(TabContents* tab) { |
+ void CheckUnauthenticatedState(WebContents* tab) { |
ASSERT_FALSE(tab->IsCrashed()); |
NavigationEntry* entry = tab->GetController().GetActiveEntry(); |
ASSERT_TRUE(entry); |
@@ -79,7 +81,7 @@ |
!!(entry->GetSSL().content_status & SSLStatus::RAN_INSECURE_CONTENT)); |
} |
- void CheckAuthenticationBrokenState(TabContents* tab, |
+ void CheckAuthenticationBrokenState(WebContents* tab, |
net::CertStatus error, |
bool ran_insecure_content, |
bool interstitial) { |
@@ -102,7 +104,7 @@ |
!!(entry->GetSSL().content_status & SSLStatus::RAN_INSECURE_CONTENT)); |
} |
- void CheckWorkerLoadResult(TabContents* tab, bool expectLoaded) { |
+ void CheckWorkerLoadResult(WebContents* tab, bool expectLoaded) { |
// Workers are async and we don't have notifications for them passing |
// messages since they do it between renderer and worker processes. |
// So have a polling loop, check every 200ms, timeout at 30s. |
@@ -134,7 +136,7 @@ |
EXPECT_EQ(expectLoaded, actuallyLoadedContent); |
} |
- void ProceedThroughInterstitial(TabContents* tab) { |
+ void ProceedThroughInterstitial(content::WebContents* tab) { |
InterstitialPage* interstitial_page = tab->GetInterstitialPage(); |
ASSERT_TRUE(interstitial_page); |
ui_test_utils::WindowedNotificationObserver observer( |
@@ -251,7 +253,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL("files/ssl/google.html")); |
- CheckUnauthenticatedState(browser()->GetSelectedTabContents()); |
+ CheckUnauthenticatedState(browser()->GetSelectedWebContents()); |
} |
// Visits a page over http which includes broken https resources (status should |
@@ -271,7 +273,7 @@ |
ui_test_utils::NavigateToURL( |
browser(), test_server()->GetURL(replacement_path)); |
- CheckUnauthenticatedState(browser()->GetSelectedTabContents()); |
+ CheckUnauthenticatedState(browser()->GetSelectedWebContents()); |
} |
// http://crbug.com/91745 |
@@ -288,7 +290,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL("files/ssl/google.html")); |
- CheckAuthenticatedState(browser()->GetSelectedTabContents(), false); |
+ CheckAuthenticatedState(browser()->GetSelectedWebContents(), false); |
} |
// Visits a page with https error and proceed: |
@@ -298,7 +300,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_expired_.GetURL("files/ssl/google.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
true); // Interstitial showing |
@@ -328,7 +330,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL("files/ssl/google.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
NavigationEntry* entry = tab->GetController().GetActiveEntry(); |
ASSERT_TRUE(entry); |
@@ -373,7 +375,7 @@ |
// First navigate to an HTTP page. |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL("files/ssl/google.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
NavigationEntry* entry = tab->GetController().GetActiveEntry(); |
ASSERT_TRUE(entry); |
@@ -396,7 +398,7 @@ |
EXPECT_FALSE(tab->GetRenderViewHost()->is_swapped_out()); |
// We should be back at the original good page. |
- EXPECT_FALSE(browser()->GetSelectedTabContents()->GetInterstitialPage()); |
+ EXPECT_FALSE(browser()->GetSelectedWebContents()->GetInterstitialPage()); |
CheckUnauthenticatedState(tab); |
} |
@@ -409,7 +411,7 @@ |
// First navigate to an HTTP page. |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL("files/ssl/google.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
NavigationEntry* entry = tab->GetController().GetActiveEntry(); |
ASSERT_TRUE(entry); |
@@ -423,7 +425,7 @@ |
tab->GetController().GoToOffset(-1); |
// We should be back at the original good page. |
- EXPECT_FALSE(browser()->GetSelectedTabContents()->GetInterstitialPage()); |
+ EXPECT_FALSE(browser()->GetSelectedWebContents()->GetInterstitialPage()); |
CheckUnauthenticatedState(tab); |
} |
@@ -436,7 +438,7 @@ |
// First navigate to two HTTP pages. |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL("files/ssl/google.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
NavigationEntry* entry1 = tab->GetController().GetActiveEntry(); |
ASSERT_TRUE(entry1); |
ui_test_utils::NavigateToURL(browser(), |
@@ -472,7 +474,7 @@ |
} |
// We should be showing the second good page. |
- EXPECT_FALSE(browser()->GetSelectedTabContents()->GetInterstitialPage()); |
+ EXPECT_FALSE(browser()->GetSelectedWebContents()->GetInterstitialPage()); |
CheckUnauthenticatedState(tab); |
EXPECT_FALSE(tab->GetController().CanGoForward()); |
NavigationEntry* entry4 = tab->GetController().GetActiveEntry(); |
@@ -497,13 +499,13 @@ |
GURL url = https_server_expired_.GetURL("files/ssl/google.htm"); |
TabContentsWrapper* tab2 = |
browser()->AddSelectedTabWithURL(url, content::PAGE_TRANSITION_TYPED); |
- ui_test_utils::WaitForLoadStop(tab2->tab_contents()); |
+ ui_test_utils::WaitForLoadStop(tab2->web_contents()); |
// Verify our assumption that there was no prior navigation. |
EXPECT_FALSE(browser()->command_updater()->IsCommandEnabled(IDC_BACK)); |
// We should have an interstitial page showing. |
- ASSERT_TRUE(tab2->tab_contents()->GetInterstitialPage()); |
+ ASSERT_TRUE(tab2->web_contents()->GetInterstitialPage()); |
} |
// Disabled due to crash in downloads code that this triggers. |
@@ -531,7 +533,7 @@ |
// Proceed through the SSL interstitial. This doesn't use |
// |ProceedThroughInterstitial| since no page load will commit. |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
ASSERT_TRUE(tab != NULL); |
ASSERT_TRUE(tab->GetInterstitialPage() != NULL); |
{ |
@@ -570,7 +572,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(replacement_path)); |
- CheckAuthenticatedState(browser()->GetSelectedTabContents(), true); |
+ CheckAuthenticatedState(browser()->GetSelectedWebContents(), true); |
} |
// Visits a page that runs insecure content and tries to suppress the insecure |
@@ -584,7 +586,7 @@ |
ui_test_utils::NavigateToURL(browser(), https_server_.GetURL( |
"files/ssl/page_runs_insecure_content.html")); |
- CheckAuthenticationBrokenState(browser()->GetSelectedTabContents(), 0, true, |
+ CheckAuthenticationBrokenState(browser()->GetSelectedWebContents(), 0, true, |
false); |
} |
@@ -604,7 +606,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(replacement_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
// When the bad content is filtered, the state is expected to be |
// authenticated. |
CheckAuthenticatedState(tab, false); |
@@ -646,7 +648,7 @@ |
ui_test_utils::NavigateToURL(browser(), https_server_.GetURL( |
replacement_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticatedState(tab, false); |
// Load the insecure image. |
@@ -673,7 +675,7 @@ |
TabContentsWrapper* tab1 = browser()->GetSelectedTabContentsWrapper(); |
// This tab should be fine. |
- CheckAuthenticatedState(tab1->tab_contents(), false); |
+ CheckAuthenticatedState(tab1->web_contents(), false); |
// Create a new tab. |
std::string replacement_path; |
@@ -696,10 +698,10 @@ |
observer.Wait(); |
// The new tab has insecure content. |
- CheckAuthenticatedState(tab2->tab_contents(), true); |
+ CheckAuthenticatedState(tab2->web_contents(), true); |
// The original tab should not be contaminated. |
- CheckAuthenticatedState(tab1->tab_contents(), false); |
+ CheckAuthenticatedState(tab1->web_contents(), false); |
} |
// Visits two pages from the same origin: one that runs insecure content and one |
@@ -715,7 +717,7 @@ |
TabContentsWrapper* tab1 = browser()->GetSelectedTabContentsWrapper(); |
// This tab should be fine. |
- CheckAuthenticatedState(tab1->tab_contents(), false); |
+ CheckAuthenticatedState(tab1->web_contents(), false); |
std::string replacement_path; |
ASSERT_TRUE(GetFilePathWithHostAndPortReplacement( |
@@ -737,11 +739,11 @@ |
observer.Wait(); |
// The new tab has insecure content. |
- CheckAuthenticationBrokenState(tab2->tab_contents(), 0, true, false); |
+ CheckAuthenticationBrokenState(tab2->web_contents(), 0, true, false); |
// Which means the origin for the first tab has also been contaminated with |
// insecure content. |
- CheckAuthenticationBrokenState(tab1->tab_contents(), 0, true, false); |
+ CheckAuthenticationBrokenState(tab1->web_contents(), 0, true, false); |
} |
// Visits a page with an image over http. Visits another page over https |
@@ -760,7 +762,7 @@ |
// Load original page over HTTP. |
const GURL url_http = test_server()->GetURL(replacement_path); |
ui_test_utils::NavigateToURL(browser(), url_http); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckUnauthenticatedState(tab); |
// Load again but over SSL. It should be marked as displaying insecure |
@@ -794,7 +796,7 @@ |
// Load original page over HTTP. |
const GURL url_http = test_server()->GetURL(replacement_path); |
ui_test_utils::NavigateToURL(browser(), url_http); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckUnauthenticatedState(tab); |
// Load again but over SSL. It should be marked as displaying insecure |
@@ -816,7 +818,7 @@ |
https_server_mismatched_.GetURL("files/ssl/google.html")); |
// We get an interstitial page as a result. |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_COMMON_NAME_INVALID, |
false, true); // Interstitial showing. |
ProceedThroughInterstitial(tab); |
@@ -854,7 +856,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_expired_.GetURL("files/ssl/page_with_refs.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
true); // Interstitial showing. |
@@ -889,7 +891,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL(replacement_path)); |
- TabContents* tab1 = browser()->GetSelectedTabContents(); |
+ WebContents* tab1 = browser()->GetSelectedWebContents(); |
// It is probably overkill to add a notification for a popup-opening, let's |
// just poll. |
for (int i = 0; i < 10; i++) { |
@@ -924,7 +926,7 @@ |
ui_test_utils::NavigateToURL(browser(), GURL(url1.spec() + url2.spec())); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
true); // Interstitial showing. |
@@ -945,7 +947,7 @@ |
GURL url2 = https_server_expired_.GetURL("files/ssl/google.html"); |
ui_test_utils::NavigateToURL(browser(), GURL(url1.spec() + url2.spec())); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
true); // Interstitial showing. |
@@ -960,7 +962,7 @@ |
ASSERT_TRUE(test_server()->Start()); |
ASSERT_TRUE(https_server_.Start()); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
// HTTP redirects to good HTTPS. |
GURL http_url = test_server()->GetURL("server-redirect?"); |
@@ -977,7 +979,7 @@ |
ASSERT_TRUE(test_server()->Start()); |
ASSERT_TRUE(https_server_expired_.Start()); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
GURL http_url = test_server()->GetURL("server-redirect?"); |
GURL bad_https_url = |
@@ -1005,18 +1007,18 @@ |
ui_test_utils::NavigateToURL(browser(), |
GURL(https_url.spec() + http_url.spec())); |
- CheckUnauthenticatedState(browser()->GetSelectedTabContents()); |
+ CheckUnauthenticatedState(browser()->GetSelectedWebContents()); |
} |
// Visits a page to which we could not connect (bad port) over http and https |
// and make sure the security style is correct. |
IN_PROC_BROWSER_TEST_F(SSLUITest, TestConnectToBadPort) { |
ui_test_utils::NavigateToURL(browser(), GURL("http://localhost:17")); |
- CheckUnauthenticatedState(browser()->GetSelectedTabContents()); |
+ CheckUnauthenticatedState(browser()->GetSelectedWebContents()); |
// Same thing over HTTPS. |
ui_test_utils::NavigateToURL(browser(), GURL("https://localhost:17")); |
- CheckUnauthenticatedState(browser()->GetSelectedTabContents()); |
+ CheckUnauthenticatedState(browser()->GetSelectedWebContents()); |
} |
// |
@@ -1039,7 +1041,7 @@ |
https_server_expired_, |
&top_frame_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(top_frame_path)); |
@@ -1138,7 +1140,7 @@ |
https_server_expired_, |
&top_frame_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
ui_test_utils::NavigateToURL(browser(), |
https_server_expired_.GetURL(top_frame_path)); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
@@ -1177,7 +1179,7 @@ |
https_server_expired_, |
&top_frame_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
ui_test_utils::NavigateToURL(browser(), |
test_server()->GetURL(top_frame_path)); |
CheckUnauthenticatedState(tab); |
@@ -1239,7 +1241,7 @@ |
&page_with_unsafe_worker_path)); |
ui_test_utils::NavigateToURL(browser(), https_server_.GetURL( |
page_with_unsafe_worker_path)); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
// Expect Worker not to load insecure content. |
CheckWorkerLoadResult(tab, false); |
// The bad content is filtered, expect the state to be authenticated. |
@@ -1255,7 +1257,7 @@ |
// the user approves the bad certificate. |
ui_test_utils::NavigateToURL(browser(), |
https_server_expired_.GetURL("files/ssl/blank_page.html")); |
- TabContents* tab = browser()->GetSelectedTabContents(); |
+ WebContents* tab = browser()->GetSelectedWebContents(); |
CheckAuthenticationBrokenState(tab, net::CERT_STATUS_DATE_INVALID, false, |
true); // Interstitial showing |
ProceedThroughInterstitial(tab); |
@@ -1290,7 +1292,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(replacement_path)); |
- CheckAuthenticatedState(browser()->GetSelectedTabContents(), false); |
+ CheckAuthenticatedState(browser()->GetSelectedWebContents(), false); |
} |
// Test that when the browser blocks displaying insecure content (iframes), the |
@@ -1309,7 +1311,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(replacement_path)); |
- CheckAuthenticatedState(browser()->GetSelectedTabContents(), false); |
+ CheckAuthenticatedState(browser()->GetSelectedWebContents(), false); |
} |
@@ -1329,7 +1331,7 @@ |
ui_test_utils::NavigateToURL(browser(), |
https_server_.GetURL(replacement_path)); |
- CheckAuthenticatedState(browser()->GetSelectedTabContents(), false); |
+ CheckAuthenticatedState(browser()->GetSelectedWebContents(), false); |
} |