Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(81)

Side by Side Diff: net/cert_net/cert_net_fetcher_impl_unittest.cc

Issue 2067843003: Require a CTVerifier and CTPolicyEnforcer for TLS/QUIC sockets (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixup Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « net/cert/ct_verifier.h ('k') | net/http/http_network_layer_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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_net/cert_net_fetcher_impl.h" 5 #include "net/cert_net/cert_net_fetcher_impl.h"
6 6
7 #include <string> 7 #include <string>
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
11 #include "base/memory/ptr_util.h" 11 #include "base/memory/ptr_util.h"
12 #include "base/run_loop.h" 12 #include "base/run_loop.h"
13 #include "net/cert/ct_policy_enforcer.h"
13 #include "net/cert/mock_cert_verifier.h" 14 #include "net/cert/mock_cert_verifier.h"
15 #include "net/cert/multi_log_ct_verifier.h"
14 #include "net/dns/mock_host_resolver.h" 16 #include "net/dns/mock_host_resolver.h"
15 #include "net/http/http_server_properties_impl.h" 17 #include "net/http/http_server_properties_impl.h"
16 #include "net/test/embedded_test_server/embedded_test_server.h" 18 #include "net/test/embedded_test_server/embedded_test_server.h"
17 #include "net/url_request/url_request_job_factory_impl.h" 19 #include "net/url_request/url_request_job_factory_impl.h"
18 #include "net/url_request/url_request_test_util.h" 20 #include "net/url_request/url_request_test_util.h"
19 #include "testing/gtest/include/gtest/gtest.h" 21 #include "testing/gtest/include/gtest/gtest.h"
20 #include "testing/platform_test.h" 22 #include "testing/platform_test.h"
21 23
22 // TODO(eroman): Test that cookies aren't sent. 24 // TODO(eroman): Test that cookies aren't sent.
23 25
24 using base::ASCIIToUTF16; 26 using base::ASCIIToUTF16;
25 27
26 namespace net { 28 namespace net {
27 29
28 namespace { 30 namespace {
29 31
30 const base::FilePath::CharType kDocRoot[] = 32 const base::FilePath::CharType kDocRoot[] =
31 FILE_PATH_LITERAL("net/data/cert_net_fetcher_impl_unittest"); 33 FILE_PATH_LITERAL("net/data/cert_net_fetcher_impl_unittest");
32 34
33 // A non-mock URLRequestContext which can access http:// urls. 35 // A non-mock URLRequestContext which can access http:// urls.
34 class RequestContext : public URLRequestContext { 36 class RequestContext : public URLRequestContext {
35 public: 37 public:
36 RequestContext() : storage_(this) { 38 RequestContext() : storage_(this) {
37 ProxyConfig no_proxy; 39 ProxyConfig no_proxy;
38 storage_.set_host_resolver( 40 storage_.set_host_resolver(
39 std::unique_ptr<HostResolver>(new MockHostResolver)); 41 std::unique_ptr<HostResolver>(new MockHostResolver));
40 storage_.set_cert_verifier(base::WrapUnique(new MockCertVerifier)); 42 storage_.set_cert_verifier(base::WrapUnique(new MockCertVerifier));
41 storage_.set_transport_security_state( 43 storage_.set_transport_security_state(
42 base::WrapUnique(new TransportSecurityState)); 44 base::WrapUnique(new TransportSecurityState));
45 storage_.set_cert_transparency_verifier(
46 base::WrapUnique(new MultiLogCTVerifier));
47 storage_.set_ct_policy_enforcer(base::WrapUnique(new CTPolicyEnforcer));
43 storage_.set_proxy_service(ProxyService::CreateFixed(no_proxy)); 48 storage_.set_proxy_service(ProxyService::CreateFixed(no_proxy));
44 storage_.set_ssl_config_service(new SSLConfigServiceDefaults); 49 storage_.set_ssl_config_service(new SSLConfigServiceDefaults);
45 storage_.set_http_server_properties( 50 storage_.set_http_server_properties(
46 std::unique_ptr<HttpServerProperties>(new HttpServerPropertiesImpl())); 51 std::unique_ptr<HttpServerProperties>(new HttpServerPropertiesImpl()));
47 52
48 HttpNetworkSession::Params params; 53 HttpNetworkSession::Params params;
49 params.host_resolver = host_resolver(); 54 params.host_resolver = host_resolver();
50 params.cert_verifier = cert_verifier(); 55 params.cert_verifier = cert_verifier();
51 params.transport_security_state = transport_security_state(); 56 params.transport_security_state = transport_security_state();
57 params.cert_transparency_verifier = cert_transparency_verifier();
58 params.ct_policy_enforcer = ct_policy_enforcer();
52 params.proxy_service = proxy_service(); 59 params.proxy_service = proxy_service();
53 params.ssl_config_service = ssl_config_service(); 60 params.ssl_config_service = ssl_config_service();
54 params.http_server_properties = http_server_properties(); 61 params.http_server_properties = http_server_properties();
55 storage_.set_http_network_session( 62 storage_.set_http_network_session(
56 base::WrapUnique(new HttpNetworkSession(params))); 63 base::WrapUnique(new HttpNetworkSession(params)));
57 storage_.set_http_transaction_factory(base::WrapUnique(new HttpCache( 64 storage_.set_http_transaction_factory(base::WrapUnique(new HttpCache(
58 storage_.http_network_session(), HttpCache::DefaultBackend::InMemory(0), 65 storage_.http_network_session(), HttpCache::DefaultBackend::InMemory(0),
59 false /* set_up_quic_server_info */))); 66 false /* set_up_quic_server_info */)));
60 storage_.set_job_factory(base::WrapUnique(new URLRequestJobFactoryImpl())); 67 storage_.set_job_factory(base::WrapUnique(new URLRequestJobFactoryImpl()));
61 } 68 }
(...skipping 690 matching lines...) Expand 10 before | Expand all | Expand 10 after
752 EXPECT_EQ(1, network_delegate_.created_requests()); 759 EXPECT_EQ(1, network_delegate_.created_requests());
753 760
754 std::unique_ptr<FetchResult> result = callback1.WaitForResult(); 761 std::unique_ptr<FetchResult> result = callback1.WaitForResult();
755 result->VerifySuccess("-cert.crt-\n"); 762 result->VerifySuccess("-cert.crt-\n");
756 763
757 // request2 was cancelled. 764 // request2 was cancelled.
758 EXPECT_FALSE(callback2.HasResult()); 765 EXPECT_FALSE(callback2.HasResult());
759 } 766 }
760 767
761 } // namespace net 768 } // namespace net
OLDNEW
« no previous file with comments | « net/cert/ct_verifier.h ('k') | net/http/http_network_layer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698