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

Side by Side Diff: content/browser/loader/resource_loader_unittest.cc

Issue 1422573008: Plumbing SSLPrivateKey (//net) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixing extra tab. Created 5 years, 1 month 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
OLDNEW
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2013 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 "content/browser/loader/resource_loader.h" 5 #include "content/browser/loader/resource_loader.h"
6 6
7 #include "base/files/file.h" 7 #include "base/files/file.h"
8 #include "base/files/file_util.h" 8 #include "base/files/file_util.h"
9 #include "base/location.h" 9 #include "base/location.h"
10 #include "base/macros.h" 10 #include "base/macros.h"
(...skipping 20 matching lines...) Expand all
31 #include "net/base/chunked_upload_data_stream.h" 31 #include "net/base/chunked_upload_data_stream.h"
32 #include "net/base/io_buffer.h" 32 #include "net/base/io_buffer.h"
33 #include "net/base/mock_file_stream.h" 33 #include "net/base/mock_file_stream.h"
34 #include "net/base/net_errors.h" 34 #include "net/base/net_errors.h"
35 #include "net/base/request_priority.h" 35 #include "net/base/request_priority.h"
36 #include "net/base/test_data_directory.h" 36 #include "net/base/test_data_directory.h"
37 #include "net/base/upload_bytes_element_reader.h" 37 #include "net/base/upload_bytes_element_reader.h"
38 #include "net/cert/x509_certificate.h" 38 #include "net/cert/x509_certificate.h"
39 #include "net/ssl/client_cert_store.h" 39 #include "net/ssl/client_cert_store.h"
40 #include "net/ssl/ssl_cert_request_info.h" 40 #include "net/ssl/ssl_cert_request_info.h"
41 #include "net/ssl/ssl_private_key.h"
41 #include "net/test/cert_test_util.h" 42 #include "net/test/cert_test_util.h"
42 #include "net/test/embedded_test_server/embedded_test_server.h" 43 #include "net/test/embedded_test_server/embedded_test_server.h"
43 #include "net/url_request/url_request.h" 44 #include "net/url_request/url_request.h"
44 #include "net/url_request/url_request_filter.h" 45 #include "net/url_request/url_request_filter.h"
45 #include "net/url_request/url_request_interceptor.h" 46 #include "net/url_request/url_request_interceptor.h"
46 #include "net/url_request/url_request_job_factory.h" 47 #include "net/url_request/url_request_job_factory.h"
47 #include "net/url_request/url_request_job_factory_impl.h" 48 #include "net/url_request/url_request_job_factory_impl.h"
48 #include "net/url_request/url_request_test_job.h" 49 #include "net/url_request/url_request_test_job.h"
49 #include "net/url_request/url_request_test_util.h" 50 #include "net/url_request/url_request_test_util.h"
50 #include "storage/browser/blob/shareable_file_reference.h" 51 #include "storage/browser/blob/shareable_file_reference.h"
(...skipping 105 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 void Start() override { 157 void Start() override {
157 scoped_refptr<net::SSLCertRequestInfo> cert_request_info( 158 scoped_refptr<net::SSLCertRequestInfo> cert_request_info(
158 new net::SSLCertRequestInfo); 159 new net::SSLCertRequestInfo);
159 cert_request_info->cert_authorities = test_authorities(); 160 cert_request_info->cert_authorities = test_authorities();
160 base::ThreadTaskRunnerHandle::Get()->PostTask( 161 base::ThreadTaskRunnerHandle::Get()->PostTask(
161 FROM_HERE, 162 FROM_HERE,
162 base::Bind(&MockClientCertURLRequestJob::NotifyCertificateRequested, 163 base::Bind(&MockClientCertURLRequestJob::NotifyCertificateRequested,
163 this, cert_request_info)); 164 this, cert_request_info));
164 } 165 }
165 166
166 void ContinueWithCertificate(net::X509Certificate* cert) override { 167 void ContinueWithCertificate(net::X509Certificate* cert,
168 net::SSLPrivateKey* private_key) override {
167 net::URLRequestTestJob::Start(); 169 net::URLRequestTestJob::Start();
168 } 170 }
169 171
170 private: 172 private:
171 ~MockClientCertURLRequestJob() override {} 173 ~MockClientCertURLRequestJob() override {}
172 174
173 DISALLOW_COPY_AND_ASSIGN(MockClientCertURLRequestJob); 175 DISALLOW_COPY_AND_ASSIGN(MockClientCertURLRequestJob);
174 }; 176 };
175 177
176 class MockClientCertJobProtocolHandler 178 class MockClientCertJobProtocolHandler
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
700 EXPECT_EQ(1, store_request_count); 702 EXPECT_EQ(1, store_request_count);
701 EXPECT_EQ(MockClientCertURLRequestJob::test_authorities(), 703 EXPECT_EQ(MockClientCertURLRequestJob::test_authorities(),
702 store_requested_authorities); 704 store_requested_authorities);
703 705
704 // Check if the retrieved certificates were passed to the content browser 706 // Check if the retrieved certificates were passed to the content browser
705 // client. 707 // client.
706 EXPECT_EQ(1, test_client.call_count()); 708 EXPECT_EQ(1, test_client.call_count());
707 EXPECT_EQ(dummy_certs, test_client.passed_certs()); 709 EXPECT_EQ(dummy_certs, test_client.passed_certs());
708 710
709 // Continue the request. 711 // Continue the request.
710 test_client.ContinueWithCertificate(dummy_certs[0].get()); 712 test_client.ContinueWithCertificate(dummy_certs[0].get());
davidben 2015/11/04 00:17:38 Rather than require the ugly os_cert_handle check,
svaldez 2015/11/04 16:55:51 Done.
711 raw_ptr_resource_handler_->WaitForResponseComplete(); 713 raw_ptr_resource_handler_->WaitForResponseComplete();
712 EXPECT_EQ(net::OK, raw_ptr_resource_handler_->status().error()); 714 EXPECT_EQ(net::OK, raw_ptr_resource_handler_->status().error());
713 715
714 // Restore the original content browser client. 716 // Restore the original content browser client.
715 SetBrowserClientForTesting(old_client); 717 SetBrowserClientForTesting(old_client);
716 } 718 }
717 719
718 // Tests that client certificates are requested on a platform with NULL 720 // Tests that client certificates are requested on a platform with NULL
719 // ClientCertStore. 721 // ClientCertStore.
720 TEST_F(ClientCertResourceLoaderTest, WithNullStore) { 722 TEST_F(ClientCertResourceLoaderTest, WithNullStore) {
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
1139 ASSERT_TRUE( 1141 ASSERT_TRUE(
1140 CertStore::GetInstance()->RetrieveCert(deserialized.cert_id, &cert)); 1142 CertStore::GetInstance()->RetrieveCert(deserialized.cert_id, &cert));
1141 EXPECT_TRUE(cert->Equals(GetTestCert().get())); 1143 EXPECT_TRUE(cert->Equals(GetTestCert().get()));
1142 1144
1143 EXPECT_EQ(kTestCertError, deserialized.cert_status); 1145 EXPECT_EQ(kTestCertError, deserialized.cert_status);
1144 EXPECT_EQ(kTestConnectionStatus, deserialized.connection_status); 1146 EXPECT_EQ(kTestConnectionStatus, deserialized.connection_status);
1145 EXPECT_EQ(kTestSecurityBits, deserialized.security_bits); 1147 EXPECT_EQ(kTestSecurityBits, deserialized.security_bits);
1146 } 1148 }
1147 1149
1148 } // namespace content 1150 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698