| Index: net/base/cert_database_nss_unittest.cc
|
| diff --git a/net/base/cert_database_nss_unittest.cc b/net/base/cert_database_nss_unittest.cc
|
| index 8ed8251b45c660fde8d85580df170d9cc3722757..75ea641e1235a3ae56424ff6d43ee6204d6680c1 100644
|
| --- a/net/base/cert_database_nss_unittest.cc
|
| +++ b/net/base/cert_database_nss_unittest.cc
|
| @@ -20,6 +20,7 @@
|
| #include "crypto/scoped_nss_types.h"
|
| #include "net/base/cert_database.h"
|
| #include "net/base/cert_status_flags.h"
|
| +#include "net/base/cert_test_util.h"
|
| #include "net/base/cert_verify_proc.h"
|
| #include "net/base/cert_verify_result.h"
|
| #include "net/base/crypto_module.h"
|
| @@ -77,13 +78,9 @@ class CertDatabaseNSSTest : public testing::Test {
|
|
|
| static bool ReadCertIntoList(const std::string& name,
|
| CertificateList* certs) {
|
| - std::string cert_data = ReadTestFile(name);
|
| - if (cert_data.empty())
|
| - return false;
|
| -
|
| - X509Certificate* cert = X509Certificate::CreateFromBytes(
|
| - cert_data.data(), cert_data.size());
|
| - if (!cert)
|
| + scoped_refptr<X509Certificate> cert(
|
| + ImportCertFromFile(GetTestCertsDirectory(), name));
|
| + if (!cert.get())
|
| return false;
|
|
|
| certs->push_back(cert);
|
| @@ -110,18 +107,6 @@ class CertDatabaseNSSTest : public testing::Test {
|
| CertDatabase cert_db_;
|
|
|
| private:
|
| - // Returns a FilePath object representing the src/net/data/ssl/certificates
|
| - // directory in the source tree.
|
| - static FilePath GetTestCertsDirectory() {
|
| - FilePath certs_dir;
|
| - PathService::Get(base::DIR_SOURCE_ROOT, &certs_dir);
|
| - certs_dir = certs_dir.AppendASCII("net");
|
| - certs_dir = certs_dir.AppendASCII("data");
|
| - certs_dir = certs_dir.AppendASCII("ssl");
|
| - certs_dir = certs_dir.AppendASCII("certificates");
|
| - return certs_dir;
|
| - }
|
| -
|
| static bool CleanupSlotContents(PK11SlotInfo* slot) {
|
| CertDatabase cert_db;
|
| bool ok = true;
|
| @@ -269,11 +254,9 @@ TEST_F(CertDatabaseNSSTest, ImportFromPKCS12InvalidFile) {
|
| }
|
|
|
| TEST_F(CertDatabaseNSSTest, ImportCACert_SSLTrust) {
|
| - std::string cert_data = ReadTestFile("root_ca_cert.crt");
|
| -
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "root_ca_cert.crt",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(1U, certs.size());
|
| EXPECT_FALSE(certs[0]->os_cert_handle()->isperm);
|
|
|
| @@ -301,11 +284,9 @@ TEST_F(CertDatabaseNSSTest, ImportCACert_SSLTrust) {
|
| }
|
|
|
| TEST_F(CertDatabaseNSSTest, ImportCACert_EmailTrust) {
|
| - std::string cert_data = ReadTestFile("root_ca_cert.crt");
|
| -
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "root_ca_cert.crt",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(1U, certs.size());
|
| EXPECT_FALSE(certs[0]->os_cert_handle()->isperm);
|
|
|
| @@ -332,11 +313,9 @@ TEST_F(CertDatabaseNSSTest, ImportCACert_EmailTrust) {
|
| }
|
|
|
| TEST_F(CertDatabaseNSSTest, ImportCACert_ObjSignTrust) {
|
| - std::string cert_data = ReadTestFile("root_ca_cert.crt");
|
| -
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "root_ca_cert.crt",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(1U, certs.size());
|
| EXPECT_FALSE(certs[0]->os_cert_handle()->isperm);
|
|
|
| @@ -363,11 +342,9 @@ TEST_F(CertDatabaseNSSTest, ImportCACert_ObjSignTrust) {
|
| }
|
|
|
| TEST_F(CertDatabaseNSSTest, ImportCA_NotCACert) {
|
| - std::string cert_data = ReadTestFile("google.single.pem");
|
| -
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "google.single.pem",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(1U, certs.size());
|
| EXPECT_FALSE(certs[0]->os_cert_handle()->isperm);
|
|
|
| @@ -495,10 +472,9 @@ TEST_F(CertDatabaseNSSTest, ImportCACertHierarchyTree) {
|
| }
|
|
|
| TEST_F(CertDatabaseNSSTest, ImportCACertNotHierarchy) {
|
| - std::string cert_data = ReadTestFile("root_ca_cert.crt");
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "root_ca_cert.crt",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(1U, certs.size());
|
| ASSERT_TRUE(ReadCertIntoList("dod_ca_13_cert.der", &certs));
|
| ASSERT_TRUE(ReadCertIntoList("dod_ca_17_cert.der", &certs));
|
| @@ -528,10 +504,9 @@ TEST_F(CertDatabaseNSSTest, DISABLED_ImportServerCert) {
|
| // Need to import intermediate cert for the verify of google cert, otherwise
|
| // it will try to fetch it automatically with cert_pi_useAIACertFetch, which
|
| // will cause OCSPCreateSession on the main thread, which is not allowed.
|
| - std::string cert_data = ReadTestFile("google.chain.pem");
|
| - CertificateList certs =
|
| - X509Certificate::CreateCertificateListFromBytes(
|
| - cert_data.data(), cert_data.size(), X509Certificate::FORMAT_AUTO);
|
| + CertificateList certs = CreateCertificateListFromFile(
|
| + GetTestCertsDirectory(), "google.chain.pem",
|
| + X509Certificate::FORMAT_AUTO);
|
| ASSERT_EQ(2U, certs.size());
|
|
|
| CertDatabase::ImportCertFailureList failed;
|
|
|