Index: content/common/ssl_status_serialization_unittest.cc |
diff --git a/content/common/ssl_status_serialization_unittest.cc b/content/common/ssl_status_serialization_unittest.cc |
index b44bc45ce7f73a48450ab2cf2f0004c99cd55d00..9c49b42e9579b132657e073ada6f52792574c92a 100644 |
--- a/content/common/ssl_status_serialization_unittest.cc |
+++ b/content/common/ssl_status_serialization_unittest.cc |
@@ -148,4 +148,19 @@ TEST(SSLStatusSerializationTest, DeserializeBogusSCTVerifyStatus) { |
EXPECT_PRED2(SSLStatusAreEqual, SSLStatus(), deserialized); |
} |
+// Test that SCTVerifyStatus INVALID can be deserialized; even though |
+// this value is deprecated, it may still appear in previously written |
+// disk cache entries. Regression test for https://crbug.com/640296 |
+TEST(SSLStatusSerializationTest, DeserializeInvalidSCT) { |
+ SSLStatus status; |
+ SetTestStatus(&status); |
+ status.sct_statuses.push_back( |
+ static_cast<net::ct::SCTVerifyStatus>(net::ct::SCT_STATUS_INVALID)); |
+ std::string serialized = SerializeSecurityInfo(status); |
+ |
+ SSLStatus deserialized; |
+ ASSERT_TRUE(DeserializeSecurityInfo(serialized, &deserialized)); |
+ EXPECT_PRED2(SSLStatusAreEqual, status, deserialized); |
+} |
+ |
} // namespace |