Index: chrome/browser/ssl/security_state_model_unittest.cc |
diff --git a/chrome/browser/ssl/security_state_model_unittest.cc b/chrome/browser/ssl/security_state_model_unittest.cc |
index b8f15f8aab3b362975aaff8ac7e9c7923601cf81..1086a96e42b45b9a89379617b0dbe5e1f9070923 100644 |
--- a/chrome/browser/ssl/security_state_model_unittest.cc |
+++ b/chrome/browser/ssl/security_state_model_unittest.cc |
@@ -20,12 +20,14 @@ namespace { |
const char kUrl[] = "https://foo.test"; |
-void GetTestSSLStatus(int process_id, content::SSLStatus* ssl_status) { |
+void GetTestSSLStatus(int process_id, |
+ scoped_refptr<net::X509Certificate>* cert, |
+ content::SSLStatus* ssl_status) { |
content::CertStore* cert_store = content::CertStore::GetInstance(); |
- const scoped_refptr<net::X509Certificate>& cert = |
+ *cert = |
net::ImportCertFromFile(net::GetTestCertsDirectory(), "sha1_2016.pem"); |
- ASSERT_TRUE(cert); |
- ssl_status->cert_id = cert_store->StoreCert(cert.get(), process_id); |
+ ASSERT_TRUE(*cert); |
+ ssl_status->cert_id = cert_store->StoreCert(cert->get(), process_id); |
EXPECT_GT(ssl_status->cert_id, 0); |
ssl_status->cert_status = net::CERT_STATUS_SHA1_SIGNATURE_PRESENT; |
ssl_status->security_bits = 256; |
@@ -42,9 +44,11 @@ TEST_F(SecurityStateModelTest, SHA1Warning) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_EQ(SecurityStateModel::DEPRECATED_SHA1_MINOR, |
security_info.sha1_deprecation_status); |
EXPECT_EQ(SecurityStateModel::NONE, security_info.security_level); |
@@ -57,10 +61,12 @@ TEST_F(SecurityStateModelTest, SHA1WarningMixedContent) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
ssl_status.content_status = content::SSLStatus::DISPLAYED_INSECURE_CONTENT; |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_EQ(SecurityStateModel::DEPRECATED_SHA1_MINOR, |
security_info.sha1_deprecation_status); |
EXPECT_EQ(SecurityStateModel::DISPLAYED_MIXED_CONTENT, |
@@ -70,7 +76,7 @@ TEST_F(SecurityStateModelTest, SHA1WarningMixedContent) { |
ssl_status.security_style = content::SECURITY_STYLE_AUTHENTICATION_BROKEN; |
ssl_status.content_status = content::SSLStatus::RAN_INSECURE_CONTENT; |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_EQ(SecurityStateModel::DEPRECATED_SHA1_MINOR, |
security_info.sha1_deprecation_status); |
EXPECT_EQ(SecurityStateModel::RAN_MIXED_CONTENT, |
@@ -85,11 +91,13 @@ TEST_F(SecurityStateModelTest, SHA1WarningBrokenHTTPS) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
ssl_status.security_style = content::SECURITY_STYLE_AUTHENTICATION_BROKEN; |
ssl_status.cert_status |= net::CERT_STATUS_DATE_INVALID; |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_EQ(SecurityStateModel::DEPRECATED_SHA1_MINOR, |
security_info.sha1_deprecation_status); |
EXPECT_EQ(SecurityStateModel::SECURITY_ERROR, security_info.security_level); |
@@ -102,7 +110,9 @@ TEST_F(SecurityStateModelTest, SecureProtocolAndCiphersuite) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
// TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 from |
// http://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-parameters-4 |
const uint16 ciphersuite = 0xc02f; |
@@ -111,7 +121,7 @@ TEST_F(SecurityStateModelTest, SecureProtocolAndCiphersuite) { |
net::SSLConnectionStatusSetCipherSuite(ciphersuite, |
&ssl_status.connection_status); |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_TRUE(security_info.is_secure_protocol_and_ciphersuite); |
} |
@@ -120,7 +130,9 @@ TEST_F(SecurityStateModelTest, NonsecureProtocol) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
// TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 from |
// http://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-parameters-4 |
const uint16 ciphersuite = 0xc02f; |
@@ -129,7 +141,7 @@ TEST_F(SecurityStateModelTest, NonsecureProtocol) { |
net::SSLConnectionStatusSetCipherSuite(ciphersuite, |
&ssl_status.connection_status); |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_FALSE(security_info.is_secure_protocol_and_ciphersuite); |
} |
@@ -138,7 +150,9 @@ TEST_F(SecurityStateModelTest, NonsecureCiphersuite) { |
Profile* test_profile = profile(); |
SecurityStateModel::SecurityInfo security_info; |
content::SSLStatus ssl_status; |
- ASSERT_NO_FATAL_FAILURE(GetTestSSLStatus(process()->GetID(), &ssl_status)); |
+ scoped_refptr<net::X509Certificate> cert; |
+ ASSERT_NO_FATAL_FAILURE( |
+ GetTestSSLStatus(process()->GetID(), &cert, &ssl_status)); |
// TLS_RSA_WITH_AES_128_CCM_8 from |
// http://www.iana.org/assignments/tls-parameters/tls-parameters.xml#tls-parameters-4 |
const uint16 ciphersuite = 0xc0a0; |
@@ -147,7 +161,7 @@ TEST_F(SecurityStateModelTest, NonsecureCiphersuite) { |
net::SSLConnectionStatusSetCipherSuite(ciphersuite, |
&ssl_status.connection_status); |
SecurityStateModel::SecurityInfoForRequest(url, ssl_status, test_profile, |
- &security_info); |
+ cert, false, &security_info); |
EXPECT_FALSE(security_info.is_secure_protocol_and_ciphersuite); |
} |