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/trust_store_collection.h" | 5 #include "net/cert/internal/trust_store_collection.h" |
6 | 6 |
7 #include "net/cert/internal/test_helpers.h" | 7 #include "net/cert/internal/test_helpers.h" |
8 #include "net/cert/internal/trust_store_in_memory.h" | 8 #include "net/cert/internal/trust_store_in_memory.h" |
9 #include "testing/gtest/include/gtest/gtest.h" | 9 #include "testing/gtest/include/gtest/gtest.h" |
10 | 10 |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
52 scoped_refptr<TrustAnchor> newroot_; | 52 scoped_refptr<TrustAnchor> newroot_; |
53 scoped_refptr<TrustAnchor> newrootrollover_; | 53 scoped_refptr<TrustAnchor> newrootrollover_; |
54 | 54 |
55 scoped_refptr<ParsedCertificate> target_; | 55 scoped_refptr<ParsedCertificate> target_; |
56 scoped_refptr<ParsedCertificate> oldintermediate_; | 56 scoped_refptr<ParsedCertificate> oldintermediate_; |
57 scoped_refptr<ParsedCertificate> newintermediate_; | 57 scoped_refptr<ParsedCertificate> newintermediate_; |
58 }; | 58 }; |
59 | 59 |
60 // Collection contains no stores, should return no results. | 60 // Collection contains no stores, should return no results. |
61 TEST_F(TrustStoreCollectionTest, NoStores) { | 61 TEST_F(TrustStoreCollectionTest, NoStores) { |
62 TrustAnchors matches; | 62 TrustAnchors anchors; |
63 ParsedCertificateList intermediates; | |
63 | 64 |
64 TrustStoreCollection collection; | 65 TrustStoreCollection collection; |
65 collection.FindTrustAnchorsForCert(target_, &matches); | 66 collection.FindIssuers(target_, &anchors, &intermediates); |
66 | 67 |
67 EXPECT_TRUE(matches.empty()); | 68 EXPECT_TRUE(anchors.empty()); |
69 EXPECT_TRUE(intermediates.empty()); | |
68 } | 70 } |
69 | 71 |
70 // Collection contains only one store. | 72 // Collection contains only one store. |
71 TEST_F(TrustStoreCollectionTest, OneStore) { | 73 TEST_F(TrustStoreCollectionTest, OneStore) { |
72 TrustAnchors matches; | 74 TrustAnchors anchors; |
75 ParsedCertificateList intermediates; | |
73 | 76 |
74 TrustStoreCollection collection; | 77 TrustStoreCollection collection; |
75 TrustStoreInMemory in_memory; | 78 TrustStoreInMemory in_memory; |
76 in_memory.AddTrustAnchor(newroot_); | 79 in_memory.AddTrustAnchor(newroot_); |
77 collection.AddTrustStore(&in_memory); | 80 collection.AddTrustStore(&in_memory); |
78 collection.FindTrustAnchorsForCert(newintermediate_, &matches); | 81 collection.FindIssuers(newintermediate_, &anchors, &intermediates); |
mattm
2017/04/20 03:19:07
These tests should all check the returned intermed
| |
79 | 82 |
80 ASSERT_EQ(1U, matches.size()); | 83 ASSERT_EQ(1U, anchors.size()); |
81 EXPECT_EQ(newroot_, matches[0]); | 84 EXPECT_EQ(newroot_, anchors[0]); |
85 } | |
86 | |
87 // LookupCert() should append to its output parameters rather than assign them. | |
88 TEST_F(TrustStoreCollectionTest, OutputVectorsAppendedTo) { | |
89 TrustAnchors anchors; | |
90 ParsedCertificateList intermediates; | |
91 | |
92 // Populate the out-parameters with some values. | |
93 anchors.resize(3); | |
94 intermediates.resize(5); | |
95 | |
96 TrustStoreCollection collection; | |
97 TrustStoreInMemory in_memory; | |
98 in_memory.AddTrustAnchor(newroot_); | |
99 collection.AddTrustStore(&in_memory); | |
100 collection.FindIssuers(newintermediate_, &anchors, &intermediates); | |
101 | |
102 ASSERT_EQ(4U, anchors.size()); | |
103 EXPECT_EQ(newroot_, anchors[3]); | |
82 } | 104 } |
83 | 105 |
84 // Collection contains two stores. | 106 // Collection contains two stores. |
85 TEST_F(TrustStoreCollectionTest, TwoStores) { | 107 TEST_F(TrustStoreCollectionTest, TwoStores) { |
86 TrustAnchors matches; | 108 TrustAnchors anchors; |
109 ParsedCertificateList intermediates; | |
87 | 110 |
88 TrustStoreCollection collection; | 111 TrustStoreCollection collection; |
89 TrustStoreInMemory in_memory1; | 112 TrustStoreInMemory in_memory1; |
90 TrustStoreInMemory in_memory2; | 113 TrustStoreInMemory in_memory2; |
91 in_memory1.AddTrustAnchor(newroot_); | 114 in_memory1.AddTrustAnchor(newroot_); |
92 in_memory2.AddTrustAnchor(oldroot_); | 115 in_memory2.AddTrustAnchor(oldroot_); |
93 collection.AddTrustStore(&in_memory1); | 116 collection.AddTrustStore(&in_memory1); |
94 collection.AddTrustStore(&in_memory2); | 117 collection.AddTrustStore(&in_memory2); |
95 collection.FindTrustAnchorsForCert(newintermediate_, &matches); | 118 collection.FindIssuers(newintermediate_, &anchors, &intermediates); |
96 | 119 |
97 ASSERT_EQ(2U, matches.size()); | 120 ASSERT_EQ(2U, anchors.size()); |
98 EXPECT_EQ(newroot_, matches[0]); | 121 EXPECT_EQ(newroot_, anchors[0]); |
99 EXPECT_EQ(oldroot_, matches[1]); | 122 EXPECT_EQ(oldroot_, anchors[1]); |
100 } | 123 } |
101 | 124 |
102 } // namespace | 125 } // namespace |
103 | 126 |
104 } // namespace net | 127 } // namespace net |
OLD | NEW |