| Index: net/cert/ct_policy_enforcer_unittest.cc
|
| diff --git a/net/cert/ct_policy_enforcer_unittest.cc b/net/cert/ct_policy_enforcer_unittest.cc
|
| index c6c61b36a3390137f8ab8ec3c996c14578cb9f08..341a8e07ae32549ec1ea9532cd8b941fd2714a1d 100644
|
| --- a/net/cert/ct_policy_enforcer_unittest.cc
|
| +++ b/net/cert/ct_policy_enforcer_unittest.cc
|
| @@ -126,6 +126,11 @@ class CTPolicyEnforcerTest : public ::testing::Test {
|
| for (size_t i = 0; i < required_scts - 1; ++i) {
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED,
|
| 1, std::vector<std::string>(), false, &result);
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_NOT_ENOUGH_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + cert.get(), result.verified_scts, BoundNetLog()))
|
| + << " for: " << (end - start).InDays() << " and " << required_scts
|
| + << " scts=" << result.verified_scts.size() << " i=" << i;
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_NOT_ENOUGH_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| cert.get(), nullptr, result.verified_scts, BoundNetLog()))
|
| @@ -134,6 +139,11 @@ class CTPolicyEnforcerTest : public ::testing::Test {
|
| }
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
|
| std::vector<std::string>(), false, &result);
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_COMPLIES_VIA_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + cert.get(), result.verified_scts, BoundNetLog()))
|
| + << " for: " << (end - start).InDays() << " and " << required_scts
|
| + << " scts=" << result.verified_scts.size();
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| cert.get(), nullptr, result.verified_scts, BoundNetLog()))
|
| @@ -153,6 +163,9 @@ TEST_F(CTPolicyEnforcerTest,
|
| ct::CTVerifyResult result;
|
| FillResultWithRepeatedLogID(google_log_id_, 2, true, &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_NOT_DIVERSE_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_NOT_DIVERSE_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), nullptr, result.verified_scts, BoundNetLog()));
|
| @@ -163,6 +176,9 @@ TEST_F(CTPolicyEnforcerTest,
|
| ct::CTVerifyResult result;
|
| FillResultWithRepeatedLogID(non_google_log_id_, 2, true, &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_NOT_DIVERSE_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_NOT_DIVERSE_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), nullptr, result.verified_scts, BoundNetLog()));
|
| @@ -172,6 +188,9 @@ TEST_F(CTPolicyEnforcerTest, ConformsToCTEVPolicyIfSCTBeforeEnforcementDate) {
|
| ct::CTVerifyResult result;
|
| FillResultWithRepeatedLogID(non_google_log_id_, 2, false, &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_COMPLIES_VIA_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), nullptr, result.verified_scts, BoundNetLog()));
|
| @@ -182,6 +201,9 @@ TEST_F(CTPolicyEnforcerTest, ConformsToCTEVPolicyWithNonEmbeddedSCTs) {
|
| FillResultWithSCTsOfOrigin(
|
| ct::SignedCertificateTimestamp::SCT_FROM_TLS_EXTENSION, 2, &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_COMPLIES_VIA_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), nullptr, result.verified_scts, BoundNetLog()));
|
| @@ -193,6 +215,9 @@ TEST_F(CTPolicyEnforcerTest, ConformsToCTEVPolicyWithEmbeddedSCTs) {
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 5,
|
| &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_COMPLIES_VIA_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), nullptr, result.verified_scts, BoundNetLog()));
|
| @@ -208,6 +233,9 @@ TEST_F(CTPolicyEnforcerTest, DoesNotConformToCTEVPolicyNotEnoughSCTs) {
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
|
| &result);
|
|
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_NOT_ENOUGH_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_NOT_ENOUGH_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| chain_.get(), non_including_whitelist.get(),
|
| @@ -222,12 +250,20 @@ TEST_F(CTPolicyEnforcerTest, DoesNotConformToCTEVPolicyNotEnoughSCTs) {
|
| chain_.get(), whitelist.get(), result.verified_scts, BoundNetLog()));
|
| }
|
|
|
| -TEST_F(CTPolicyEnforcerTest, DoesNotConformToPolicyInvalidDates) {
|
| +// TODO(estark): fix this test so that it can check if
|
| +// |no_valid_dates_cert| is on the whitelist without
|
| +// crashing. https://crbug.com/582740
|
| +TEST_F(CTPolicyEnforcerTest, DISABLED_DoesNotConformToPolicyInvalidDates) {
|
| scoped_refptr<X509Certificate> no_valid_dates_cert(new X509Certificate(
|
| "subject", "issuer", base::Time(), base::Time::Now()));
|
| + ASSERT_TRUE(no_valid_dates_cert);
|
| ct::CTVerifyResult result;
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 5,
|
| &result);
|
| + EXPECT_EQ(
|
| + ct::CertPolicyCompliance::CERT_POLICY_NOT_ENOUGH_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + no_valid_dates_cert.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_NOT_ENOUGH_SCTS,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
| no_valid_dates_cert.get(), nullptr, result.verified_scts,
|
| @@ -235,10 +271,10 @@ TEST_F(CTPolicyEnforcerTest, DoesNotConformToPolicyInvalidDates) {
|
| // ... but should be OK if whitelisted.
|
| scoped_refptr<ct::EVCertsWhitelist> whitelist(
|
| new DummyEVCertsWhitelist(true, true));
|
| - EXPECT_EQ(
|
| - ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_WHITELIST,
|
| - policy_enforcer_->DoesConformToCTEVPolicy(
|
| - chain_.get(), whitelist.get(), result.verified_scts, BoundNetLog()));
|
| + EXPECT_EQ(ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_WHITELIST,
|
| + policy_enforcer_->DoesConformToCTEVPolicy(
|
| + no_valid_dates_cert.get(), whitelist.get(),
|
| + result.verified_scts, BoundNetLog()));
|
| }
|
|
|
| TEST_F(CTPolicyEnforcerTest,
|
| @@ -292,6 +328,9 @@ TEST_F(CTPolicyEnforcerTest, ConformsToPolicyByEVWhitelistPresence) {
|
| ct::CTVerifyResult result;
|
| FillResultWithSCTsOfOrigin(ct::SignedCertificateTimestamp::SCT_EMBEDDED, 1,
|
| &result);
|
| + EXPECT_EQ(ct::CertPolicyCompliance::CERT_POLICY_NOT_ENOUGH_SCTS,
|
| + policy_enforcer_->DoesConformToCertPolicy(
|
| + chain_.get(), result.verified_scts, BoundNetLog()));
|
| EXPECT_EQ(
|
| ct::EVPolicyCompliance::EV_POLICY_COMPLIES_VIA_WHITELIST,
|
| policy_enforcer_->DoesConformToCTEVPolicy(
|
|
|