OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2006-2008 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 <Windows.h> | 5 #include <Windows.h> |
6 #include <Wincrypt.h> | 6 #include <Wincrypt.h> |
7 | 7 |
8 #include <string> | 8 #include <string> |
9 | 9 |
10 #include "chrome/common/pref_names.h" | 10 #include "chrome/common/pref_names.h" |
(...skipping 23 matching lines...) Expand all Loading... |
34 void NavigateTab(TabProxy* tab_proxy, const GURL& url) { | 34 void NavigateTab(TabProxy* tab_proxy, const GURL& url) { |
35 ASSERT_TRUE(tab_proxy->NavigateToURL(url)); | 35 ASSERT_TRUE(tab_proxy->NavigateToURL(url)); |
36 } | 36 } |
37 | 37 |
38 void AppendTab(const GURL& url) { | 38 void AppendTab(const GURL& url) { |
39 scoped_ptr<BrowserProxy> browser_proxy(automation()->GetBrowserWindow(0)); | 39 scoped_ptr<BrowserProxy> browser_proxy(automation()->GetBrowserWindow(0)); |
40 EXPECT_TRUE(browser_proxy.get()); | 40 EXPECT_TRUE(browser_proxy.get()); |
41 EXPECT_TRUE(browser_proxy->AppendTab(url)); | 41 EXPECT_TRUE(browser_proxy->AppendTab(url)); |
42 } | 42 } |
43 | 43 |
44 HTTPTestServer* PlainServer() { | 44 TestServer* PlainServer() { |
45 return HTTPTestServer::CreateServer(kDocRoot); | 45 return new TestServer(kDocRoot); |
46 } | 46 } |
47 | 47 |
48 HTTPSTestServer* GoodCertServer() { | 48 HTTPSTestServer* GoodCertServer() { |
49 return HTTPSTestServer::CreateServer(util_.kHostName, util_.kOKHTTPSPort, | 49 return new HTTPSTestServer(util_.kHostName, util_.kOKHTTPSPort, |
50 kDocRoot, util_.GetOKCertPath().ToWStringHack()); | 50 kDocRoot, util_.GetOKCertPath().ToWStringHack()); |
51 } | 51 } |
52 | 52 |
53 HTTPSTestServer* BadCertServer() { | 53 HTTPSTestServer* BadCertServer() { |
54 return HTTPSTestServer::CreateServer(util_.kHostName, util_.kBadHTTPSPort, | 54 return new HTTPSTestServer(util_.kHostName, util_.kBadHTTPSPort, |
55 kDocRoot, util_.GetExpiredCertPath().ToWStringHack()); | 55 kDocRoot, util_.GetExpiredCertPath().ToWStringHack()); |
56 } | 56 } |
57 | 57 |
58 protected: | 58 protected: |
59 SSLTestUtil util_; | 59 SSLTestUtil util_; |
60 | 60 |
61 DISALLOW_COPY_AND_ASSIGN(SSLUITest); | 61 DISALLOW_COPY_AND_ASSIGN(SSLUITest); |
62 }; | 62 }; |
63 | 63 |
64 } // namespace | 64 } // namespace |
65 | 65 |
66 // Visits a regular page over http. | 66 // Visits a regular page over http. |
67 TEST_F(SSLUITest, TestHTTP) { | 67 TEST_F(SSLUITest, TestHTTP) { |
68 scoped_ptr<HTTPTestServer> server(PlainServer()); | 68 scoped_ptr<TestServer> server(PlainServer()); |
69 | 69 |
70 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 70 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
71 NavigateTab(tab.get(), server->TestServerPageW(L"files/ssl/google.html")); | 71 NavigateTab(tab.get(), server->TestServerPageW(L"files/ssl/google.html")); |
72 | 72 |
73 NavigationEntry::PageType page_type; | 73 NavigationEntry::PageType page_type; |
74 EXPECT_TRUE(tab->GetPageType(&page_type)); | 74 EXPECT_TRUE(tab->GetPageType(&page_type)); |
75 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); | 75 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); |
76 | 76 |
77 SecurityStyle security_style; | 77 SecurityStyle security_style; |
78 int cert_status; | 78 int cert_status; |
79 int mixed_content_state; | 79 int mixed_content_state; |
80 EXPECT_TRUE(tab->GetSecurityState(&security_style, &cert_status, | 80 EXPECT_TRUE(tab->GetSecurityState(&security_style, &cert_status, |
81 &mixed_content_state)); | 81 &mixed_content_state)); |
82 EXPECT_EQ(SECURITY_STYLE_UNAUTHENTICATED, security_style); | 82 EXPECT_EQ(SECURITY_STYLE_UNAUTHENTICATED, security_style); |
83 EXPECT_EQ(0, cert_status); | 83 EXPECT_EQ(0, cert_status); |
84 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 84 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
85 } | 85 } |
86 | 86 |
87 // Visits a page over http which includes broken https resources (status should | 87 // Visits a page over http which includes broken https resources (status should |
88 // be OK). | 88 // be OK). |
89 TEST_F(SSLUITest, TestHTTPWithBrokenHTTPSResource) { | 89 TEST_F(SSLUITest, TestHTTPWithBrokenHTTPSResource) { |
90 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 90 scoped_ptr<TestServer> http_server(PlainServer()); |
91 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); | 91 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); |
92 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 92 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
93 | 93 |
94 NavigateTab(tab.get(), | 94 NavigateTab(tab.get(), |
95 http_server->TestServerPageW(L"files/ssl/page_with_unsafe_contents.html"))
; | 95 http_server->TestServerPageW(L"files/ssl/page_with_unsafe_contents.html"))
; |
96 | 96 |
97 SecurityStyle security_style; | 97 SecurityStyle security_style; |
98 int cert_status; | 98 int cert_status; |
99 int mixed_content_state; | 99 int mixed_content_state; |
100 EXPECT_TRUE(tab->GetSecurityState(&security_style, &cert_status, | 100 EXPECT_TRUE(tab->GetSecurityState(&security_style, &cert_status, |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 157 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
158 } | 158 } |
159 | 159 |
160 // | 160 // |
161 // Mixed contents | 161 // Mixed contents |
162 // | 162 // |
163 | 163 |
164 // Visits a page with mixed content. | 164 // Visits a page with mixed content. |
165 TEST_F(SSLUITest, TestMixedContents) { | 165 TEST_F(SSLUITest, TestMixedContents) { |
166 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); | 166 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); |
167 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 167 scoped_ptr<TestServer> http_server(PlainServer()); |
168 | 168 |
169 // Load a page with mixed-content, the default behavior is to show the mixed | 169 // Load a page with mixed-content, the default behavior is to show the mixed |
170 // content. | 170 // content. |
171 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 171 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
172 NavigateTab(tab.get(), | 172 NavigateTab(tab.get(), |
173 https_server->TestServerPageW(L"files/ssl/page_with_mixed_contents.html"))
; | 173 https_server->TestServerPageW(L"files/ssl/page_with_mixed_contents.html"))
; |
174 NavigationEntry::PageType page_type; | 174 NavigationEntry::PageType page_type; |
175 EXPECT_TRUE(tab->GetPageType(&page_type)); | 175 EXPECT_TRUE(tab->GetPageType(&page_type)); |
176 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); | 176 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); |
177 | 177 |
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
279 bool js_result = false; | 279 bool js_result = false; |
280 EXPECT_TRUE(tab->ExecuteAndExtractBool(L"", | 280 EXPECT_TRUE(tab->ExecuteAndExtractBool(L"", |
281 L"window.domAutomationController.send(IsFooSet());", | 281 L"window.domAutomationController.send(IsFooSet());", |
282 &js_result)); | 282 &js_result)); |
283 EXPECT_FALSE(js_result); | 283 EXPECT_FALSE(js_result); |
284 } | 284 } |
285 | 285 |
286 // Visits a page with mixed content loaded by JS (after the initial page load). | 286 // Visits a page with mixed content loaded by JS (after the initial page load). |
287 TEST_F(SSLUITest, TestMixedContentsLoadedFromJS) { | 287 TEST_F(SSLUITest, TestMixedContentsLoadedFromJS) { |
288 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); | 288 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); |
289 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 289 scoped_ptr<TestServer> http_server(PlainServer()); |
290 | 290 |
291 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 291 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
292 NavigateTab(tab.get(), https_server->TestServerPageW( | 292 NavigateTab(tab.get(), https_server->TestServerPageW( |
293 L"files/ssl/page_with_dynamic_mixed_contents.html")); | 293 L"files/ssl/page_with_dynamic_mixed_contents.html")); |
294 NavigationEntry::PageType page_type; | 294 NavigationEntry::PageType page_type; |
295 EXPECT_TRUE(tab->GetPageType(&page_type)); | 295 EXPECT_TRUE(tab->GetPageType(&page_type)); |
296 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); | 296 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); |
297 SecurityStyle security_style; | 297 SecurityStyle security_style; |
298 int cert_status; | 298 int cert_status; |
299 int mixed_content_state; | 299 int mixed_content_state; |
(...skipping 18 matching lines...) Expand all Loading... |
318 EXPECT_EQ(0, | 318 EXPECT_EQ(0, |
319 cert_status & net::CERT_STATUS_ALL_ERRORS); // No errors expected. | 319 cert_status & net::CERT_STATUS_ALL_ERRORS); // No errors expected. |
320 EXPECT_EQ(NavigationEntry::SSLStatus::MIXED_CONTENT, mixed_content_state); | 320 EXPECT_EQ(NavigationEntry::SSLStatus::MIXED_CONTENT, mixed_content_state); |
321 } | 321 } |
322 | 322 |
323 // Visits a page with an image over http. Visits another page over https | 323 // Visits a page with an image over http. Visits another page over https |
324 // referencing that same image over http (hoping it is coming from the webcore | 324 // referencing that same image over http (hoping it is coming from the webcore |
325 // memory cache). | 325 // memory cache). |
326 TEST_F(SSLUITest, TestCachedMixedContents) { | 326 TEST_F(SSLUITest, TestCachedMixedContents) { |
327 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); | 327 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); |
328 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 328 scoped_ptr<TestServer> http_server(PlainServer()); |
329 | 329 |
330 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 330 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
331 NavigateTab(tab.get(), http_server->TestServerPageW( | 331 NavigateTab(tab.get(), http_server->TestServerPageW( |
332 L"files/ssl/page_with_mixed_contents.html")); | 332 L"files/ssl/page_with_mixed_contents.html")); |
333 | 333 |
334 NavigationEntry::PageType page_type; | 334 NavigationEntry::PageType page_type; |
335 EXPECT_TRUE(tab->GetPageType(&page_type)); | 335 EXPECT_TRUE(tab->GetPageType(&page_type)); |
336 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); | 336 EXPECT_EQ(NavigationEntry::NORMAL_PAGE, page_type); |
337 SecurityStyle security_style; | 337 SecurityStyle security_style; |
338 int cert_status; | 338 int cert_status; |
(...skipping 18 matching lines...) Expand all Loading... |
357 EXPECT_EQ(0, | 357 EXPECT_EQ(0, |
358 cert_status & net::CERT_STATUS_ALL_ERRORS); // No errors expected. | 358 cert_status & net::CERT_STATUS_ALL_ERRORS); // No errors expected. |
359 EXPECT_EQ(NavigationEntry::SSLStatus::MIXED_CONTENT, mixed_content_state); | 359 EXPECT_EQ(NavigationEntry::SSLStatus::MIXED_CONTENT, mixed_content_state); |
360 } | 360 } |
361 | 361 |
362 // This test ensures the CN invalid status does not 'stick' to a certificate | 362 // This test ensures the CN invalid status does not 'stick' to a certificate |
363 // (see bug #1044942) and that it depends on the host-name. | 363 // (see bug #1044942) and that it depends on the host-name. |
364 // TODO(jcampan): this test is flacky and fails sometimes (bug #1065095) | 364 // TODO(jcampan): this test is flacky and fails sometimes (bug #1065095) |
365 TEST_F(SSLUITest, DISABLED_TestCNInvalidStickiness) { | 365 TEST_F(SSLUITest, DISABLED_TestCNInvalidStickiness) { |
366 const std::string kLocalHost = "localhost"; | 366 const std::string kLocalHost = "localhost"; |
367 scoped_refptr<HTTPSTestServer> https_server = | 367 scoped_ptr<HTTPSTestServer> https_server( |
368 HTTPSTestServer::CreateServer(kLocalHost, util_.kOKHTTPSPort, | 368 new HTTPSTestServer(kLocalHost, util_.kOKHTTPSPort, |
369 kDocRoot, util_.GetOKCertPath().ToWStringHack()); | 369 kDocRoot, util_.GetOKCertPath().ToWStringHack())); |
370 ASSERT_TRUE(NULL != https_server.get()); | |
371 | 370 |
372 // First we hit the server with hostname, this generates an invalid policy | 371 // First we hit the server with hostname, this generates an invalid policy |
373 // error. | 372 // error. |
374 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 373 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
375 NavigateTab(tab.get(), https_server->TestServerPageW( | 374 NavigateTab(tab.get(), https_server->TestServerPageW( |
376 L"files/ssl/google.html")); | 375 L"files/ssl/google.html")); |
377 | 376 |
378 // We get an interstitial page as a result. | 377 // We get an interstitial page as a result. |
379 NavigationEntry::PageType page_type; | 378 NavigationEntry::PageType page_type; |
380 EXPECT_TRUE(tab->GetPageType(&page_type)); | 379 EXPECT_TRUE(tab->GetPageType(&page_type)); |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
469 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); | 468 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); |
470 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, | 469 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, |
471 cert_status & net::CERT_STATUS_ALL_ERRORS); | 470 cert_status & net::CERT_STATUS_ALL_ERRORS); |
472 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 471 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
473 } | 472 } |
474 | 473 |
475 // Tests that closing a page that has a unsafe pop-up does not crash the browser | 474 // Tests that closing a page that has a unsafe pop-up does not crash the browser |
476 // (bug #1966). | 475 // (bug #1966). |
477 // Disabled because flaky (bug #2136). | 476 // Disabled because flaky (bug #2136). |
478 TEST_F(SSLUITest, DISABLED_TestCloseTabWithUnsafePopup) { | 477 TEST_F(SSLUITest, DISABLED_TestCloseTabWithUnsafePopup) { |
479 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 478 scoped_ptr<TestServer> http_server(PlainServer()); |
480 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); | 479 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); |
481 | 480 |
482 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 481 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
483 NavigateTab(tab.get(), | 482 NavigateTab(tab.get(), |
484 http_server->TestServerPageW( | 483 http_server->TestServerPageW( |
485 L"files/ssl/page_with_unsafe_popup.html")); | 484 L"files/ssl/page_with_unsafe_popup.html")); |
486 | 485 |
487 int popup_count = 0; | 486 int popup_count = 0; |
488 EXPECT_TRUE(tab->GetConstrainedWindowCount(&popup_count)); | 487 EXPECT_TRUE(tab->GetConstrainedWindowCount(&popup_count)); |
489 EXPECT_EQ(1, popup_count); | 488 EXPECT_EQ(1, popup_count); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
555 &mixed_content_state)); | 554 &mixed_content_state)); |
556 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); | 555 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); |
557 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, | 556 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, |
558 cert_status & net::CERT_STATUS_ALL_ERRORS); | 557 cert_status & net::CERT_STATUS_ALL_ERRORS); |
559 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 558 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
560 } | 559 } |
561 | 560 |
562 // Visit a page over http that is a redirect to a page with https (good and | 561 // Visit a page over http that is a redirect to a page with https (good and |
563 // bad). | 562 // bad). |
564 TEST_F(SSLUITest, TestRedirectHTTPToHTTPS) { | 563 TEST_F(SSLUITest, TestRedirectHTTPToHTTPS) { |
565 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 564 scoped_ptr<TestServer> http_server(PlainServer()); |
566 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); | 565 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); |
567 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); | 566 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); |
568 | 567 |
569 // HTTP redirects to good HTTPS. | 568 // HTTP redirects to good HTTPS. |
570 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 569 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
571 GURL http_url = http_server->TestServerPageW(L"server-redirect?"); | 570 GURL http_url = http_server->TestServerPageW(L"server-redirect?"); |
572 GURL good_https_url = | 571 GURL good_https_url = |
573 good_https_server->TestServerPageW(L"files/ssl/google.html"); | 572 good_https_server->TestServerPageW(L"files/ssl/google.html"); |
574 NavigateTab(tab.get(), GURL(http_url.spec() + good_https_url.spec())); | 573 NavigateTab(tab.get(), GURL(http_url.spec() + good_https_url.spec())); |
575 | 574 |
(...skipping 22 matching lines...) Expand all Loading... |
598 &mixed_content_state)); | 597 &mixed_content_state)); |
599 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); | 598 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); |
600 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, | 599 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, |
601 cert_status & net::CERT_STATUS_ALL_ERRORS); | 600 cert_status & net::CERT_STATUS_ALL_ERRORS); |
602 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 601 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
603 } | 602 } |
604 | 603 |
605 // Visit a page over https that is a redirect to a page with http (to make sure | 604 // Visit a page over https that is a redirect to a page with http (to make sure |
606 // we don't keep the secure state). | 605 // we don't keep the secure state). |
607 TEST_F(SSLUITest, TestRedirectHTTPSToHTTP) { | 606 TEST_F(SSLUITest, TestRedirectHTTPSToHTTP) { |
608 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 607 scoped_ptr<TestServer> http_server(PlainServer()); |
609 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); | 608 scoped_ptr<HTTPSTestServer> https_server(GoodCertServer()); |
610 | 609 |
611 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 610 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
612 GURL https_url = https_server->TestServerPageW(L"server-redirect?"); | 611 GURL https_url = https_server->TestServerPageW(L"server-redirect?"); |
613 GURL http_url = http_server->TestServerPageW(L"files/ssl/google.html"); | 612 GURL http_url = http_server->TestServerPageW(L"files/ssl/google.html"); |
614 NavigateTab(tab.get(), GURL(https_url.spec() + http_url.spec())); | 613 NavigateTab(tab.get(), GURL(https_url.spec() + http_url.spec())); |
615 | 614 |
616 SecurityStyle security_style; | 615 SecurityStyle security_style; |
617 int cert_status; | 616 int cert_status; |
618 int mixed_content_state; | 617 int mixed_content_state; |
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
654 // | 653 // |
655 // Frame navigation | 654 // Frame navigation |
656 // | 655 // |
657 | 656 |
658 // From a good HTTPS top frame: | 657 // From a good HTTPS top frame: |
659 // - navigate to an OK HTTPS frame | 658 // - navigate to an OK HTTPS frame |
660 // - navigate to a bad HTTPS (expect unsafe content and filtered frame), then | 659 // - navigate to a bad HTTPS (expect unsafe content and filtered frame), then |
661 // back | 660 // back |
662 // - navigate to HTTP (expect mixed content), then back | 661 // - navigate to HTTP (expect mixed content), then back |
663 TEST_F(SSLUITest, TestGoodFrameNavigation) { | 662 TEST_F(SSLUITest, TestGoodFrameNavigation) { |
664 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 663 scoped_ptr<TestServer> http_server(PlainServer()); |
665 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); | 664 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); |
666 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); | 665 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); |
667 | 666 |
668 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 667 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
669 NavigateTab(tab.get(), | 668 NavigateTab(tab.get(), |
670 good_https_server->TestServerPageW(L"files/ssl/top_frame.html")); | 669 good_https_server->TestServerPageW(L"files/ssl/top_frame.html")); |
671 | 670 |
672 SecurityStyle security_style; | 671 SecurityStyle security_style; |
673 int cert_status; | 672 int cert_status; |
674 int mixed_content_state; | 673 int mixed_content_state; |
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
792 &mixed_content_state)); | 791 &mixed_content_state)); |
793 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); | 792 EXPECT_EQ(SECURITY_STYLE_AUTHENTICATION_BROKEN, security_style); |
794 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, | 793 EXPECT_EQ(net::CERT_STATUS_DATE_INVALID, |
795 cert_status & net::CERT_STATUS_ALL_ERRORS); | 794 cert_status & net::CERT_STATUS_ALL_ERRORS); |
796 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); | 795 EXPECT_EQ(NavigationEntry::SSLStatus::NORMAL_CONTENT, mixed_content_state); |
797 } | 796 } |
798 | 797 |
799 // From an HTTP top frame, navigate to good and bad HTTPS (security state should | 798 // From an HTTP top frame, navigate to good and bad HTTPS (security state should |
800 // stay unauthenticated). | 799 // stay unauthenticated). |
801 TEST_F(SSLUITest, TestUnauthenticatedFrameNavigation) { | 800 TEST_F(SSLUITest, TestUnauthenticatedFrameNavigation) { |
802 scoped_ptr<HTTPTestServer> http_server(PlainServer()); | 801 scoped_ptr<TestServer> http_server(PlainServer()); |
803 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); | 802 scoped_ptr<HTTPSTestServer> good_https_server(GoodCertServer()); |
804 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); | 803 scoped_ptr<HTTPSTestServer> bad_https_server(BadCertServer()); |
805 | 804 |
806 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); | 805 scoped_ptr<TabProxy> tab(GetActiveTabProxy()); |
807 NavigateTab(tab.get(), | 806 NavigateTab(tab.get(), |
808 http_server->TestServerPageW(L"files/ssl/top_frame.html")); | 807 http_server->TestServerPageW(L"files/ssl/top_frame.html")); |
809 | 808 |
810 SecurityStyle security_style; | 809 SecurityStyle security_style; |
811 int cert_status; | 810 int cert_status; |
812 int mixed_content_state; | 811 int mixed_content_state; |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
865 | 864 |
866 // Visit a page over https that contains a frame with a redirect. | 865 // Visit a page over https that contains a frame with a redirect. |
867 | 866 |
868 // XMLHttpRequest mixed in synchronous mode. | 867 // XMLHttpRequest mixed in synchronous mode. |
869 | 868 |
870 // XMLHttpRequest mixed in asynchronous mode. | 869 // XMLHttpRequest mixed in asynchronous mode. |
871 | 870 |
872 // XMLHttpRequest over bad ssl in synchronous mode. | 871 // XMLHttpRequest over bad ssl in synchronous mode. |
873 | 872 |
874 // XMLHttpRequest over OK ssl in synchronous mode. | 873 // XMLHttpRequest over OK ssl in synchronous mode. |
OLD | NEW |