Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 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 "net/cert/internal/parse_ocsp.h" | 5 #include "net/cert/internal/parse_ocsp.h" |
| 6 | 6 |
| 7 #include "base/files/file_path.h" | 7 #include "base/files/file_path.h" |
| 8 #include "base/logging.h" | 8 #include "base/logging.h" |
| 9 #include "net/cert/internal/test_helpers.h" | 9 #include "net/cert/internal/test_helpers.h" |
| 10 #include "net/cert/x509_certificate.h" | 10 #include "net/cert/x509_certificate.h" |
| (...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 175 } | 175 } |
| 176 | 176 |
| 177 TEST(ParseOCSPTest, OCSPOCSPSingleExtension) { | 177 TEST(ParseOCSPTest, OCSPOCSPSingleExtension) { |
| 178 ASSERT_EQ(OCSP_SUCCESS, ParseOCSP("has_single_extension.pem")); | 178 ASSERT_EQ(OCSP_SUCCESS, ParseOCSP("has_single_extension.pem")); |
| 179 } | 179 } |
| 180 | 180 |
| 181 TEST(ParseOCSPTest, OCSPMissingResponse) { | 181 TEST(ParseOCSPTest, OCSPMissingResponse) { |
| 182 ASSERT_EQ(PARSE_OCSP_SINGLE_RESPONSE, ParseOCSP("missing_response.pem")); | 182 ASSERT_EQ(PARSE_OCSP_SINGLE_RESPONSE, ParseOCSP("missing_response.pem")); |
| 183 } | 183 } |
| 184 | 184 |
| 185 const base::TimeDelta kOCSPAgeOneWeek = base::TimeDelta::FromDays(7); | |
|
estark
2016/06/24 00:27:35
this could go in the anonymous namespace
dadrian
2016/06/24 01:41:52
Done.
| |
| 186 | |
| 187 TEST(OCSPDateTest, Valid) { | |
| 188 OCSPSingleResponse response; | |
| 189 base::Time now = base::Time::Now(); | |
| 190 base::Time this_update = now - base::TimeDelta::FromHours(1); | |
| 191 base::Time next_update = this_update + base::TimeDelta::FromDays(7); | |
| 192 response.this_update = der::ConvertBaseUTCTime(this_update); | |
| 193 response.has_next_update = false; | |
| 194 EXPECT_TRUE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 195 response.has_next_update = true; | |
| 196 response.next_update = der::ConvertBaseUTCTime(next_update); | |
| 197 EXPECT_TRUE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 198 } | |
| 199 | |
| 200 TEST(OCSPDateTest, Young) { | |
| 201 OCSPSingleResponse response; | |
| 202 base::Time now = base::Time::Now(); | |
| 203 base::Time this_update = now + base::TimeDelta::FromHours(1); | |
| 204 base::Time next_update = this_update + base::TimeDelta::FromDays(7); | |
| 205 response.this_update = der::ConvertBaseUTCTime(this_update); | |
| 206 response.has_next_update = false; | |
| 207 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 208 response.has_next_update = true; | |
| 209 response.next_update = der::ConvertBaseUTCTime(next_update); | |
| 210 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 211 } | |
| 212 | |
| 213 TEST(OCSPDateTest, Old) { | |
| 214 OCSPSingleResponse response; | |
| 215 base::Time now = base::Time::Now(); | |
| 216 base::Time this_update = now - base::TimeDelta::FromDays(6); | |
| 217 base::Time next_update = now - base::TimeDelta::FromHours(1); | |
| 218 response.this_update = der::ConvertBaseUTCTime(this_update); | |
| 219 response.has_next_update = false; | |
| 220 EXPECT_TRUE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 221 response.has_next_update = true; | |
| 222 response.next_update = der::ConvertBaseUTCTime(next_update); | |
| 223 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 224 } | |
| 225 | |
| 226 TEST(OCSPDateTest, Backwards) { | |
| 227 OCSPSingleResponse response; | |
| 228 base::Time now = base::Time::Now(); | |
| 229 base::Time next_update = now - base::TimeDelta::FromHours(1); | |
| 230 base::Time this_update = next_update + base::TimeDelta::FromDays(7); | |
| 231 response.this_update = der::ConvertBaseUTCTime(this_update); | |
| 232 response.has_next_update = false; | |
| 233 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 234 response.has_next_update = true; | |
| 235 response.next_update = der::ConvertBaseUTCTime(next_update); | |
| 236 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 237 } | |
| 238 | |
| 239 TEST(OCSPDateTest, Long) { | |
| 240 OCSPSingleResponse response; | |
| 241 base::Time now = base::Time::Now(); | |
| 242 base::Time this_update = now - base::TimeDelta::FromDays(365); | |
| 243 base::Time next_update = now + base::TimeDelta::FromHours(1); | |
| 244 response.this_update = der::ConvertBaseUTCTime(this_update); | |
| 245 response.has_next_update = false; | |
| 246 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 247 response.has_next_update = true; | |
| 248 response.next_update = der::ConvertBaseUTCTime(next_update); | |
| 249 EXPECT_FALSE(CheckOCSPDateValid(response, now, kOCSPAgeOneWeek)); | |
| 250 } | |
| 251 | |
| 185 } // namespace net | 252 } // namespace net |
| OLD | NEW |