Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4652)

Unified Diff: chrome/browser/ssl/chrome_security_state_model_client_browser_tests.cc

Issue 1539043002: Pull SecurityStateModel out into a component (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: android fix Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ssl/chrome_security_state_model_client_browser_tests.cc
diff --git a/chrome/browser/ssl/security_state_model_browser_tests.cc b/chrome/browser/ssl/chrome_security_state_model_client_browser_tests.cc
similarity index 76%
rename from chrome/browser/ssl/security_state_model_browser_tests.cc
rename to chrome/browser/ssl/chrome_security_state_model_client_browser_tests.cc
index db228c43e65d7399833fbba593d0f76f5f53c47f..ba78148b0d57801870c99627f68ef2fdd9b5f7f0 100644
--- a/chrome/browser/ssl/security_state_model_browser_tests.cc
+++ b/chrome/browser/ssl/chrome_security_state_model_client_browser_tests.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "chrome/browser/ssl/security_state_model.h"
+#include "chrome/browser/ssl/chrome_security_state_model_client.h"
#include "base/command_line.h"
#include "base/files/file_path.h"
@@ -45,16 +45,18 @@ const base::FilePath::CharType kDocRoot[] =
void CheckSecurityInfoForSecure(
content::WebContents* contents,
- SecurityStateModel::SecurityLevel expect_security_level,
- SecurityStateModel::SHA1DeprecationStatus expect_sha1_status,
- SecurityStateModel::MixedContentStatus expect_mixed_content_status,
+ security_state::SecurityStateModel::SecurityLevel expect_security_level,
+ security_state::SecurityStateModel::SHA1DeprecationStatus
+ expect_sha1_status,
+ security_state::SecurityStateModel::MixedContentStatus
+ expect_mixed_content_status,
bool expect_cert_error) {
ASSERT_TRUE(contents);
ChromeSecurityStateModelClient* model_client =
ChromeSecurityStateModelClient::FromWebContents(contents);
ASSERT_TRUE(model_client);
- const SecurityStateModel::SecurityInfo& security_info =
+ const security_state::SecurityStateModel::SecurityInfo& security_info =
model_client->GetSecurityInfo();
EXPECT_EQ(expect_security_level, security_info.security_level);
EXPECT_EQ(expect_sha1_status, security_info.sha1_deprecation_status);
@@ -76,12 +78,13 @@ void CheckSecurityInfoForNonSecure(content::WebContents* contents) {
ChromeSecurityStateModelClient* model_client =
ChromeSecurityStateModelClient::FromWebContents(contents);
ASSERT_TRUE(model_client);
- const SecurityStateModel::SecurityInfo& security_info =
+ const security_state::SecurityStateModel::SecurityInfo& security_info =
model_client->GetSecurityInfo();
- EXPECT_EQ(SecurityStateModel::NONE, security_info.security_level);
- EXPECT_EQ(SecurityStateModel::NO_DEPRECATED_SHA1,
+ EXPECT_EQ(security_state::SecurityStateModel::NONE,
+ security_info.security_level);
+ EXPECT_EQ(security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
security_info.sha1_deprecation_status);
- EXPECT_EQ(SecurityStateModel::NO_MIXED_CONTENT,
+ EXPECT_EQ(security_state::SecurityStateModel::NO_MIXED_CONTENT,
security_info.mixed_content_status);
EXPECT_TRUE(security_info.sct_verify_statuses.empty());
EXPECT_FALSE(security_info.scheme_is_cryptographic);
@@ -90,9 +93,9 @@ void CheckSecurityInfoForNonSecure(content::WebContents* contents) {
EXPECT_EQ(0, security_info.cert_id);
}
-class SecurityStateModelTest : public CertVerifierBrowserTest {
+class ChromeSecurityStateModelClientTest : public CertVerifierBrowserTest {
public:
- SecurityStateModelTest()
+ ChromeSecurityStateModelClientTest()
: https_server_(net::EmbeddedTestServer::TYPE_HTTPS) {
https_server_.ServeFilesFromSourceDirectory(base::FilePath(kDocRoot));
}
@@ -141,10 +144,10 @@ class SecurityStateModelTest : public CertVerifierBrowserTest {
net::EmbeddedTestServer https_server_;
private:
- DISALLOW_COPY_AND_ASSIGN(SecurityStateModelTest);
+ DISALLOW_COPY_AND_ASSIGN(ChromeSecurityStateModelClientTest);
};
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, HttpPage) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, HttpPage) {
ASSERT_TRUE(embedded_test_server()->Start());
ui_test_utils::NavigateToURL(
browser(), embedded_test_server()->GetURL("/ssl/google.html"));
@@ -155,12 +158,13 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, HttpPage) {
ChromeSecurityStateModelClient* model_client =
ChromeSecurityStateModelClient::FromWebContents(contents);
ASSERT_TRUE(model_client);
- const SecurityStateModel::SecurityInfo& security_info =
+ const security_state::SecurityStateModel::SecurityInfo& security_info =
model_client->GetSecurityInfo();
- EXPECT_EQ(SecurityStateModel::NONE, security_info.security_level);
- EXPECT_EQ(SecurityStateModel::NO_DEPRECATED_SHA1,
+ EXPECT_EQ(security_state::SecurityStateModel::NONE,
+ security_info.security_level);
+ EXPECT_EQ(security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
security_info.sha1_deprecation_status);
- EXPECT_EQ(SecurityStateModel::NO_MIXED_CONTENT,
+ EXPECT_EQ(security_state::SecurityStateModel::NO_MIXED_CONTENT,
security_info.mixed_content_status);
EXPECT_TRUE(security_info.sct_verify_statuses.empty());
EXPECT_FALSE(security_info.scheme_is_cryptographic);
@@ -170,7 +174,7 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, HttpPage) {
EXPECT_EQ(0, security_info.connection_status);
}
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, HttpsPage) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, HttpsPage) {
ASSERT_TRUE(https_server_.Start());
SetUpMockCertVerifierForHttpsServer(0, net::OK);
@@ -178,12 +182,13 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, HttpsPage) {
https_server_.GetURL("/ssl/google.html"));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURE, SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
false /* expect cert status error */);
}
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, SHA1Broken) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, SHA1Broken) {
ASSERT_TRUE(https_server_.Start());
// The test server uses a long-lived cert by default, so a SHA1
// signature in it will register as a "broken" condition rather than
@@ -195,13 +200,13 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, SHA1Broken) {
https_server_.GetURL("/ssl/google.html"));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
false /* expect cert status error */);
}
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, MixedContent) {
ASSERT_TRUE(embedded_test_server()->Start());
ASSERT_TRUE(https_server_.Start());
SetUpMockCertVerifierForHttpsServer(0, net::OK);
@@ -215,8 +220,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::NONE, SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::NONE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that displays mixed content dynamically.
@@ -227,8 +233,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURE, SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
false /* expect cert status error */);
// Load the insecure image.
bool js_result = false;
@@ -238,8 +245,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
EXPECT_TRUE(js_result);
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::NONE, SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::NONE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that runs mixed content.
@@ -250,9 +258,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::RAN_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::RAN_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that runs and displays mixed content.
@@ -263,9 +271,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that runs mixed content in an iframe.
@@ -283,14 +291,15 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContent) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::RAN_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::RAN_MIXED_CONTENT,
false /* expect cert status error */);
}
// Same as the test above but with a long-lived SHA1 cert.
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest,
+ MixedContentWithBrokenSHA1) {
ASSERT_TRUE(embedded_test_server()->Start());
ASSERT_TRUE(https_server_.Start());
// The test server uses a long-lived cert by default, so a SHA1
@@ -308,9 +317,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that displays mixed content dynamically.
@@ -321,9 +330,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
false /* expect cert status error */);
// Load the insecure image.
bool js_result = false;
@@ -333,9 +342,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
EXPECT_TRUE(js_result);
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that runs mixed content.
@@ -346,9 +355,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::RAN_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::RAN_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to an HTTPS page that runs and displays mixed content.
@@ -359,13 +368,13 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, MixedContentWithBrokenSHA1) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::DEPRECATED_SHA1_MAJOR,
- SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::DEPRECATED_SHA1_MAJOR,
+ security_state::SecurityStateModel::RAN_AND_DISPLAYED_MIXED_CONTENT,
false /* expect cert status error */);
}
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, BrokenHTTPS) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, BrokenHTTPS) {
ASSERT_TRUE(embedded_test_server()->Start());
ASSERT_TRUE(https_server_.Start());
SetUpMockCertVerifierForHttpsServer(net::CERT_STATUS_DATE_INVALID,
@@ -375,9 +384,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, BrokenHTTPS) {
https_server_.GetURL("/ssl/google.html"));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
true /* expect cert status error */);
ProceedThroughInterstitial(
@@ -385,9 +394,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, BrokenHTTPS) {
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
true /* expect cert status error */);
// Navigate to a broken HTTPS page that displays mixed content.
@@ -399,9 +408,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, BrokenHTTPS) {
https_server_.GetURL(replacement_path));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURITY_ERROR,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::DISPLAYED_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURITY_ERROR,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::DISPLAYED_MIXED_CONTENT,
true /* expect cert status error */);
}
@@ -431,9 +440,10 @@ void InstallLoadingInterceptor(const std::string& host) {
scoped_ptr<net::URLRequestInterceptor>(new PendingJobInterceptor()));
}
-class SecurityStateModelLoadingTest : public SecurityStateModelTest {
+class SecurityStateModelLoadingTest
+ : public ChromeSecurityStateModelClientTest {
public:
- SecurityStateModelLoadingTest() : SecurityStateModelTest() {}
+ SecurityStateModelLoadingTest() : ChromeSecurityStateModelClientTest() {}
~SecurityStateModelLoadingTest() override{};
protected:
@@ -460,8 +470,9 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelLoadingTest, NavigationStateChanges) {
https_server_.GetURL("/ssl/google.html"));
CheckSecurityInfoForSecure(
browser()->tab_strip_model()->GetActiveWebContents(),
- SecurityStateModel::SECURE, SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
+ security_state::SecurityStateModel::SECURE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
false /* expect cert status error */);
// Navigate to a page that doesn't finish loading. Test that the
@@ -475,7 +486,7 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelLoadingTest, NavigationStateChanges) {
// Tests that the SecurityStateModel for a WebContents is up-to-date
// when the WebContents is inserted into a Browser's TabStripModel.
-IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, AddedTab) {
+IN_PROC_BROWSER_TEST_F(ChromeSecurityStateModelClientTest, AddedTab) {
ASSERT_TRUE(https_server_.Start());
SetUpMockCertVerifierForHttpsServer(0, net::OK);
@@ -491,17 +502,19 @@ IN_PROC_BROWSER_TEST_F(SecurityStateModelTest, AddedTab) {
controller.LoadURL(https_server_.GetURL("/"), content::Referrer(),
ui::PAGE_TRANSITION_TYPED, std::string());
EXPECT_TRUE(content::WaitForLoadStop(new_contents));
- CheckSecurityInfoForSecure(new_contents, SecurityStateModel::SECURE,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
- false /* expect cert status error */);
+ CheckSecurityInfoForSecure(
+ new_contents, security_state::SecurityStateModel::SECURE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
+ false /* expect cert status error */);
browser()->tab_strip_model()->InsertWebContentsAt(0, new_contents,
TabStripModel::ADD_NONE);
- CheckSecurityInfoForSecure(new_contents, SecurityStateModel::SECURE,
- SecurityStateModel::NO_DEPRECATED_SHA1,
- SecurityStateModel::NO_MIXED_CONTENT,
- false /* expect cert status error */);
+ CheckSecurityInfoForSecure(
+ new_contents, security_state::SecurityStateModel::SECURE,
+ security_state::SecurityStateModel::NO_DEPRECATED_SHA1,
+ security_state::SecurityStateModel::NO_MIXED_CONTENT,
+ false /* expect cert status error */);
}
} // namespace

Powered by Google App Engine
This is Rietveld 408576698