| Index: net/cert/x509_cert_types_unittest.cc
|
| diff --git a/net/cert/x509_cert_types_unittest.cc b/net/cert/x509_cert_types_unittest.cc
|
| deleted file mode 100644
|
| index a6645c03a2ae14ef3202d082bd9500e541a83f69..0000000000000000000000000000000000000000
|
| --- a/net/cert/x509_cert_types_unittest.cc
|
| +++ /dev/null
|
| @@ -1,241 +0,0 @@
|
| -// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can be
|
| -// found in the LICENSE file.
|
| -
|
| -#include "net/cert/x509_cert_types.h"
|
| -
|
| -#include "base/basictypes.h"
|
| -#include "base/strings/string_piece.h"
|
| -#include "base/time/time.h"
|
| -#include "net/test/test_certificate_data.h"
|
| -#include "testing/gtest/include/gtest/gtest.h"
|
| -
|
| -namespace net {
|
| -
|
| -namespace {
|
| -
|
| -#if defined(OS_MACOSX) && !defined(OS_IOS)
|
| -TEST(X509TypesTest, Matching) {
|
| - CertPrincipal spamco;
|
| - spamco.common_name = "SpamCo Dept. Of Certificization";
|
| - spamco.country_name = "EB";
|
| - spamco.organization_names.push_back("SpamCo Holding Company, LLC");
|
| - spamco.organization_names.push_back("SpamCo Evil Masterminds");
|
| - spamco.organization_unit_names.push_back("Class Z Obfuscation Authority");
|
| - ASSERT_TRUE(spamco.Matches(spamco));
|
| -
|
| - CertPrincipal bogus;
|
| - EXPECT_FALSE(bogus.Matches(spamco));
|
| - EXPECT_FALSE(spamco.Matches(bogus));
|
| -
|
| - bogus = spamco;
|
| - EXPECT_TRUE(bogus.Matches(spamco));
|
| - EXPECT_TRUE(spamco.Matches(bogus));
|
| -
|
| - bogus.organization_names.erase(bogus.organization_names.begin(),
|
| - bogus.organization_names.end());
|
| - EXPECT_FALSE(bogus.Matches(spamco));
|
| - EXPECT_FALSE(spamco.Matches(bogus));
|
| -
|
| - bogus.organization_names.push_back("SpamCo Holding Company, LLC");
|
| - bogus.organization_names.push_back("SpamCo Evil Masterminds");
|
| - EXPECT_TRUE(bogus.Matches(spamco));
|
| - EXPECT_TRUE(spamco.Matches(bogus));
|
| -
|
| - bogus.locality_name = "Elbosdorf";
|
| - EXPECT_FALSE(bogus.Matches(spamco));
|
| - EXPECT_FALSE(spamco.Matches(bogus));
|
| -
|
| - bogus.locality_name = "";
|
| - bogus.organization_unit_names.push_back("Q Division");
|
| - EXPECT_FALSE(bogus.Matches(spamco));
|
| - EXPECT_FALSE(spamco.Matches(bogus));
|
| -}
|
| -#endif
|
| -
|
| -#if (defined(OS_MACOSX) && !defined(OS_IOS)) || defined(OS_WIN)
|
| -TEST(X509TypesTest, ParseDNVerisign) {
|
| - CertPrincipal verisign;
|
| - EXPECT_TRUE(verisign.ParseDistinguishedName(VerisignDN, sizeof(VerisignDN)));
|
| - EXPECT_EQ("", verisign.common_name);
|
| - EXPECT_EQ("US", verisign.country_name);
|
| - ASSERT_EQ(1U, verisign.organization_names.size());
|
| - EXPECT_EQ("VeriSign, Inc.", verisign.organization_names[0]);
|
| - ASSERT_EQ(1U, verisign.organization_unit_names.size());
|
| - EXPECT_EQ("Class 1 Public Primary Certification Authority",
|
| - verisign.organization_unit_names[0]);
|
| -}
|
| -
|
| -TEST(X509TypesTest, ParseDNStartcom) {
|
| - CertPrincipal startcom;
|
| - EXPECT_TRUE(startcom.ParseDistinguishedName(StartComDN, sizeof(StartComDN)));
|
| - EXPECT_EQ("StartCom Certification Authority", startcom.common_name);
|
| - EXPECT_EQ("IL", startcom.country_name);
|
| - ASSERT_EQ(1U, startcom.organization_names.size());
|
| - EXPECT_EQ("StartCom Ltd.", startcom.organization_names[0]);
|
| - ASSERT_EQ(1U, startcom.organization_unit_names.size());
|
| - EXPECT_EQ("Secure Digital Certificate Signing",
|
| - startcom.organization_unit_names[0]);
|
| -}
|
| -
|
| -TEST(X509TypesTest, ParseDNUserTrust) {
|
| - CertPrincipal usertrust;
|
| - EXPECT_TRUE(usertrust.ParseDistinguishedName(UserTrustDN,
|
| - sizeof(UserTrustDN)));
|
| - EXPECT_EQ("UTN-USERFirst-Client Authentication and Email",
|
| - usertrust.common_name);
|
| - EXPECT_EQ("US", usertrust.country_name);
|
| - EXPECT_EQ("UT", usertrust.state_or_province_name);
|
| - EXPECT_EQ("Salt Lake City", usertrust.locality_name);
|
| - ASSERT_EQ(1U, usertrust.organization_names.size());
|
| - EXPECT_EQ("The USERTRUST Network", usertrust.organization_names[0]);
|
| - ASSERT_EQ(1U, usertrust.organization_unit_names.size());
|
| - EXPECT_EQ("http://www.usertrust.com",
|
| - usertrust.organization_unit_names[0]);
|
| -}
|
| -
|
| -TEST(X509TypesTest, ParseDNTurkTrust) {
|
| - // Note: This tests parsing UTF8STRINGs.
|
| - CertPrincipal turktrust;
|
| - EXPECT_TRUE(turktrust.ParseDistinguishedName(TurkTrustDN,
|
| - sizeof(TurkTrustDN)));
|
| - EXPECT_EQ("TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı",
|
| - turktrust.common_name);
|
| - EXPECT_EQ("TR", turktrust.country_name);
|
| - EXPECT_EQ("Ankara", turktrust.locality_name);
|
| - ASSERT_EQ(1U, turktrust.organization_names.size());
|
| - EXPECT_EQ("TÜRKTRUST Bilgi İletişim ve Bilişim Güvenliği Hizmetleri A.Ş. (c) Kasım 2005",
|
| - turktrust.organization_names[0]);
|
| -}
|
| -
|
| -TEST(X509TypesTest, ParseDNATrust) {
|
| - // Note: This tests parsing 16-bit BMPSTRINGs.
|
| - CertPrincipal atrust;
|
| - EXPECT_TRUE(atrust.ParseDistinguishedName(ATrustQual01DN,
|
| - sizeof(ATrustQual01DN)));
|
| - EXPECT_EQ("A-Trust-Qual-01",
|
| - atrust.common_name);
|
| - EXPECT_EQ("AT", atrust.country_name);
|
| - ASSERT_EQ(1U, atrust.organization_names.size());
|
| - EXPECT_EQ("A-Trust Ges. für Sicherheitssysteme im elektr. Datenverkehr GmbH",
|
| - atrust.organization_names[0]);
|
| - ASSERT_EQ(1U, atrust.organization_unit_names.size());
|
| - EXPECT_EQ("A-Trust-Qual-01",
|
| - atrust.organization_unit_names[0]);
|
| -}
|
| -
|
| -TEST(X509TypesTest, ParseDNEntrust) {
|
| - // Note: This tests parsing T61STRINGs and fields with multiple values.
|
| - CertPrincipal entrust;
|
| - EXPECT_TRUE(entrust.ParseDistinguishedName(EntrustDN,
|
| - sizeof(EntrustDN)));
|
| - EXPECT_EQ("Entrust.net Certification Authority (2048)",
|
| - entrust.common_name);
|
| - EXPECT_EQ("", entrust.country_name);
|
| - ASSERT_EQ(1U, entrust.organization_names.size());
|
| - EXPECT_EQ("Entrust.net",
|
| - entrust.organization_names[0]);
|
| - ASSERT_EQ(2U, entrust.organization_unit_names.size());
|
| - EXPECT_EQ("www.entrust.net/CPS_2048 incorp. by ref. (limits liab.)",
|
| - entrust.organization_unit_names[0]);
|
| - EXPECT_EQ("(c) 1999 Entrust.net Limited",
|
| - entrust.organization_unit_names[1]);
|
| -}
|
| -#endif
|
| -
|
| -const struct CertDateTestData {
|
| - CertDateFormat format;
|
| - const char* date_string;
|
| - bool is_valid;
|
| - base::Time::Exploded expected_result;
|
| -} kCertDateTimeData[] = {
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "120101000000Z",
|
| - true,
|
| - { 2012, 1, 0, 1, 0, 0, 0 } },
|
| - { CERT_DATE_FORMAT_GENERALIZED_TIME,
|
| - "20120101000000Z",
|
| - true,
|
| - { 2012, 1, 0, 1, 0, 0, 0 } },
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "490101000000Z",
|
| - true,
|
| - { 2049, 1, 0, 1, 0, 0, 0 } },
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "500101000000Z",
|
| - true,
|
| - { 1950, 1, 0, 1, 0, 0, 0 } },
|
| - { CERT_DATE_FORMAT_GENERALIZED_TIME,
|
| - "19500101000000Z",
|
| - true,
|
| - { 1950, 1, 0, 1, 0, 0, 0 } },
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "AB0101000000Z",
|
| - false,
|
| - { 0 } },
|
| - { CERT_DATE_FORMAT_GENERALIZED_TIME,
|
| - "19AB0101000000Z",
|
| - false,
|
| - { 0 } },
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "",
|
| - false,
|
| - { 0 } },
|
| - { CERT_DATE_FORMAT_UTC_TIME,
|
| - "A",
|
| - false,
|
| - { 0 } },
|
| - { CERT_DATE_FORMAT_GENERALIZED_TIME,
|
| - "20121301000000Z",
|
| - false,
|
| - { 0 } },
|
| - { CERT_DATE_FORMAT_GENERALIZED_TIME,
|
| - "20120101123000Z",
|
| - true,
|
| - { 2012, 1, 0, 1, 12, 30, 0 } },
|
| -};
|
| -
|
| -// GTest pretty printer.
|
| -void PrintTo(const CertDateTestData& data, std::ostream* os) {
|
| - *os << " format: " << data.format
|
| - << "; date string: " << base::StringPiece(data.date_string)
|
| - << "; valid: " << data.is_valid
|
| - << "; expected date: "
|
| - << (data.is_valid ?
|
| - base::Time::FromUTCExploded(data.expected_result)
|
| - .ToInternalValue() :
|
| - 0U);
|
| -}
|
| -
|
| -class X509CertTypesDateTest : public testing::TestWithParam<CertDateTestData> {
|
| - public:
|
| - virtual ~X509CertTypesDateTest() {}
|
| - void SetUp() override { test_data_ = GetParam(); }
|
| -
|
| - protected:
|
| - CertDateTestData test_data_;
|
| -};
|
| -
|
| -TEST_P(X509CertTypesDateTest, Parse) {
|
| - base::Time parsed_date;
|
| - bool parsed = ParseCertificateDate(
|
| - test_data_.date_string, test_data_.format, &parsed_date);
|
| - EXPECT_EQ(test_data_.is_valid, parsed);
|
| - if (!test_data_.is_valid)
|
| - return;
|
| - // Convert the expected value to a base::Time(). This ensures that systems
|
| - // systems that only support 32-bit times will pass the tests, by ensuring at
|
| - // least that the times have the same truncating behaviour.
|
| - // Note: Compared as internal values so that mismatches can be cleanly
|
| - // printed by GTest (eg: without PrintTo overrides).
|
| - EXPECT_EQ(base::Time::FromUTCExploded(test_data_.expected_result)
|
| - .ToInternalValue(),
|
| - parsed_date.ToInternalValue());
|
| -}
|
| -INSTANTIATE_TEST_CASE_P(,
|
| - X509CertTypesDateTest,
|
| - testing::ValuesIn(kCertDateTimeData));
|
| -
|
| -} // namespace
|
| -
|
| -} // namespace net
|
|
|