| Index: components/security_state/core/security_state_unittest.cc
|
| diff --git a/components/security_state/core/security_state_unittest.cc b/components/security_state/core/security_state_unittest.cc
|
| index 9b9ddad894a6df426d871fa68b6ac28045053ed2..5a9bbc7cc30c6dcfa43f725e21da7de687366535 100644
|
| --- a/components/security_state/core/security_state_unittest.cc
|
| +++ b/components/security_state/core/security_state_unittest.cc
|
| @@ -51,6 +51,9 @@ class TestSecurityStateHelper {
|
| displayed_credit_card_field_on_http_(false) {}
|
| virtual ~TestSecurityStateHelper() {}
|
|
|
| + void SetCertificate(scoped_refptr<net::X509Certificate> cert) {
|
| + cert_ = std::move(cert);
|
| + }
|
| void set_connection_status(int connection_status) {
|
| connection_status_ = connection_status;
|
| }
|
| @@ -107,7 +110,7 @@ class TestSecurityStateHelper {
|
|
|
| private:
|
| GURL url_;
|
| - const scoped_refptr<net::X509Certificate> cert_;
|
| + scoped_refptr<net::X509Certificate> cert_;
|
| int connection_status_;
|
| net::CertStatus cert_status_;
|
| bool displayed_mixed_content_;
|
| @@ -366,4 +369,24 @@ TEST(SecurityStateTest, MarkHttpAsStatusHistogram) {
|
| histograms.ExpectUniqueSample(kHistogramName, 2 /* HTTP_SHOW_WARNING */, 2);
|
| }
|
|
|
| +TEST(SecurityStateTest, DetectSubjectAltName) {
|
| + TestSecurityStateHelper helper;
|
| +
|
| + // Ensure subjectAltName is detected as present when the cert includes it.
|
| + SecurityInfo san_security_info;
|
| + helper.GetSecurityInfo(&san_security_info);
|
| + EXPECT_FALSE(san_security_info.cert_missing_subject_alt_name);
|
| +
|
| + // Ensure subjectAltName is detected as missing when the cert doesn't
|
| + // include it.
|
| + scoped_refptr<net::X509Certificate> cert = net::ImportCertFromFile(
|
| + net::GetTestCertsDirectory(), "salesforce_com_test.pem");
|
| + ASSERT_TRUE(cert);
|
| + helper.SetCertificate(std::move(cert));
|
| +
|
| + SecurityInfo no_san_security_info;
|
| + helper.GetSecurityInfo(&no_san_security_info);
|
| + EXPECT_TRUE(no_san_security_info.cert_missing_subject_alt_name);
|
| +}
|
| +
|
| } // namespace security_state
|
|
|