| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 "build/build_config.h" | 5 #include "build/build_config.h" |
| 6 | 6 |
| 7 #if defined(OS_WIN) | 7 #if defined(OS_WIN) |
| 8 #include <windows.h> | 8 #include <windows.h> |
| 9 #include <shlobj.h> | 9 #include <shlobj.h> |
| 10 #endif | 10 #endif |
| (...skipping 2010 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2021 TestDelegate d; | 2021 TestDelegate d; |
| 2022 network_delegate.set_cookie_options(TestNetworkDelegate::NO_GET_COOKIES); | 2022 network_delegate.set_cookie_options(TestNetworkDelegate::NO_GET_COOKIES); |
| 2023 URLRequest req( | 2023 URLRequest req( |
| 2024 test_server.GetURL("echoheader?Cookie"), &d, &default_context_); | 2024 test_server.GetURL("echoheader?Cookie"), &d, &default_context_); |
| 2025 req.Start(); | 2025 req.Start(); |
| 2026 base::MessageLoop::current()->Run(); | 2026 base::MessageLoop::current()->Run(); |
| 2027 | 2027 |
| 2028 EXPECT_TRUE(d.data_received().find("Cookie: CookieToNotSend=1") | 2028 EXPECT_TRUE(d.data_received().find("Cookie: CookieToNotSend=1") |
| 2029 == std::string::npos); | 2029 == std::string::npos); |
| 2030 | 2030 |
| 2031 EXPECT_EQ(1, network_delegate.blocked_get_cookies_count()); | 2031 EXPECT_EQ(2, network_delegate.blocked_get_cookies_count()); |
| 2032 EXPECT_EQ(0, network_delegate.blocked_set_cookie_count()); | 2032 EXPECT_EQ(0, network_delegate.blocked_set_cookie_count()); |
| 2033 } | 2033 } |
| 2034 } | 2034 } |
| 2035 | 2035 |
| 2036 TEST_F(URLRequestTest, DoNotSaveCookies_ViaPolicy) { | 2036 TEST_F(URLRequestTest, DoNotSaveCookies_ViaPolicy) { |
| 2037 LocalHttpTestServer test_server; | 2037 LocalHttpTestServer test_server; |
| 2038 ASSERT_TRUE(test_server.Start()); | 2038 ASSERT_TRUE(test_server.Start()); |
| 2039 | 2039 |
| 2040 // Set up a cookie. | 2040 // Set up a cookie. |
| 2041 { | 2041 { |
| (...skipping 110 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2152 TestDelegate d; | 2152 TestDelegate d; |
| 2153 network_delegate.set_cookie_options(TestNetworkDelegate::NO_GET_COOKIES); | 2153 network_delegate.set_cookie_options(TestNetworkDelegate::NO_GET_COOKIES); |
| 2154 URLRequest req( | 2154 URLRequest req( |
| 2155 test_server.GetURL("echoheader?Cookie"), &d, &default_context_); | 2155 test_server.GetURL("echoheader?Cookie"), &d, &default_context_); |
| 2156 req.Start(); | 2156 req.Start(); |
| 2157 base::MessageLoop::current()->Run(); | 2157 base::MessageLoop::current()->Run(); |
| 2158 | 2158 |
| 2159 EXPECT_TRUE(d.data_received().find("Cookie: CookieToNotSend=1") | 2159 EXPECT_TRUE(d.data_received().find("Cookie: CookieToNotSend=1") |
| 2160 == std::string::npos); | 2160 == std::string::npos); |
| 2161 | 2161 |
| 2162 EXPECT_EQ(1, network_delegate.blocked_get_cookies_count()); | 2162 EXPECT_EQ(2, network_delegate.blocked_get_cookies_count()); |
| 2163 EXPECT_EQ(0, network_delegate.blocked_set_cookie_count()); | 2163 EXPECT_EQ(0, network_delegate.blocked_set_cookie_count()); |
| 2164 } | 2164 } |
| 2165 } | 2165 } |
| 2166 | 2166 |
| 2167 TEST_F(URLRequestTest, DoNotSaveCookies_ViaPolicy_Async) { | 2167 TEST_F(URLRequestTest, DoNotSaveCookies_ViaPolicy_Async) { |
| 2168 LocalHttpTestServer test_server; | 2168 LocalHttpTestServer test_server; |
| 2169 ASSERT_TRUE(test_server.Start()); | 2169 ASSERT_TRUE(test_server.Start()); |
| 2170 | 2170 |
| 2171 // Set up a cookie. | 2171 // Set up a cookie. |
| 2172 { | 2172 { |
| (...skipping 1747 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3920 &d, | 3920 &d, |
| 3921 &default_context_); | 3921 &default_context_); |
| 3922 request.Start(); | 3922 request.Start(); |
| 3923 base::MessageLoop::current()->Run(); | 3923 base::MessageLoop::current()->Run(); |
| 3924 | 3924 |
| 3925 TransportSecurityState* security_state = | 3925 TransportSecurityState* security_state = |
| 3926 default_context_.transport_security_state(); | 3926 default_context_.transport_security_state(); |
| 3927 bool sni_available = true; | 3927 bool sni_available = true; |
| 3928 TransportSecurityState::DomainState domain_state; | 3928 TransportSecurityState::DomainState domain_state; |
| 3929 EXPECT_TRUE(security_state->GetDomainState( | 3929 EXPECT_TRUE(security_state->GetDomainState( |
| 3930 SpawnedTestServer::kLocalhost, sni_available, &domain_state)); | 3930 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 3931 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, | 3931 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, |
| 3932 domain_state.upgrade_mode); | 3932 domain_state.upgrade_mode); |
| 3933 EXPECT_TRUE(domain_state.sts_include_subdomains); | 3933 EXPECT_TRUE(domain_state.sts_include_subdomains); |
| 3934 EXPECT_FALSE(domain_state.pkp_include_subdomains); | |
| 3935 #if defined(OS_ANDROID) | 3934 #if defined(OS_ANDROID) |
| 3936 // Android's CertVerifyProc does not (yet) handle pins. | 3935 // Android's CertVerifyProc does not (yet) handle pins. |
| 3937 #else | 3936 #else |
| 3938 EXPECT_FALSE(domain_state.HasPublicKeyPins()); | 3937 EXPECT_FALSE(domain_state.HasPublicKeyPins()); |
| 3939 #endif | 3938 #endif |
| 3940 } | 3939 } |
| 3941 | 3940 |
| 3942 // Android's CertVerifyProc does not (yet) handle pins. Therefore, it will | 3941 // Android's CertVerifyProc does not (yet) handle pins. Therefore, it will |
| 3943 // reject HPKP headers, and a test setting only HPKP headers will fail (no | 3942 // reject HPKP headers, and a test setting only HPKP headers will fail (no |
| 3944 // DomainState present because header rejected). | 3943 // DomainState present because header rejected). |
| (...skipping 19 matching lines...) Expand all Loading... |
| 3964 &d, | 3963 &d, |
| 3965 &default_context_); | 3964 &default_context_); |
| 3966 request.Start(); | 3965 request.Start(); |
| 3967 base::MessageLoop::current()->Run(); | 3966 base::MessageLoop::current()->Run(); |
| 3968 | 3967 |
| 3969 TransportSecurityState* security_state = | 3968 TransportSecurityState* security_state = |
| 3970 default_context_.transport_security_state(); | 3969 default_context_.transport_security_state(); |
| 3971 bool sni_available = true; | 3970 bool sni_available = true; |
| 3972 TransportSecurityState::DomainState domain_state; | 3971 TransportSecurityState::DomainState domain_state; |
| 3973 EXPECT_TRUE(security_state->GetDomainState( | 3972 EXPECT_TRUE(security_state->GetDomainState( |
| 3974 SpawnedTestServer::kLocalhost, sni_available, &domain_state)); | 3973 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 3975 EXPECT_EQ(TransportSecurityState::DomainState::MODE_DEFAULT, | 3974 EXPECT_EQ(TransportSecurityState::DomainState::MODE_DEFAULT, |
| 3976 domain_state.upgrade_mode); | 3975 domain_state.upgrade_mode); |
| 3977 EXPECT_FALSE(domain_state.sts_include_subdomains); | 3976 EXPECT_FALSE(domain_state.sts_include_subdomains); |
| 3978 EXPECT_FALSE(domain_state.pkp_include_subdomains); | 3977 EXPECT_FALSE(domain_state.pkp_include_subdomains); |
| 3979 EXPECT_TRUE(domain_state.HasPublicKeyPins()); | 3978 EXPECT_TRUE(domain_state.HasPublicKeyPins()); |
| 3979 |
| 3980 EXPECT_NE(domain_state.upgrade_expiry, | 3980 EXPECT_NE(domain_state.upgrade_expiry, |
| 3981 domain_state.dynamic_spki_hashes_expiry); | 3981 domain_state.dynamic_spki_hashes_expiry); |
| 3982 } | 3982 } |
| 3983 | 3983 |
| 3984 // Android's CertVerifyProc does not (yet) handle pins. Therefore, it will |
| 3985 // reject HPKP headers, and a test setting only HPKP headers will fail (no |
| 3986 // DomainState present because header rejected). |
| 3987 #if defined(OS_ANDROID) |
| 3988 #define MAYBE_ProcessPKP_PrivacyMode DISABLED_ProcessPKP_PrivacyMode |
| 3989 #else |
| 3990 #define MAYBE_ProcessPKP_PrivacyMode ProcessPKP_PrivacyMode |
| 3991 #endif |
| 3992 // Tests that DynamicDomainState is not added if cookies are not set. |
| 3993 TEST_F(URLRequestTestHTTP, ProcessPKP_PrivacyMode) { |
| 3994 SpawnedTestServer::SSLOptions ssl_options; |
| 3995 SpawnedTestServer https_test_server( |
| 3996 SpawnedTestServer::TYPE_HTTPS, |
| 3997 ssl_options, |
| 3998 base::FilePath(FILE_PATH_LITERAL("net/data/url_request_unittest"))); |
| 3999 ASSERT_TRUE(https_test_server.Start()); |
| 4000 |
| 4001 default_network_delegate_.set_cookie_options( |
| 4002 TestNetworkDelegate::NO_SET_COOKIE); |
| 4003 TestDelegate d; |
| 4004 URLRequest request(https_test_server.GetURL("files/hpkp-headers.html"), |
| 4005 &d, |
| 4006 &default_context_); |
| 4007 request.Start(); |
| 4008 base::MessageLoop::current()->Run(); |
| 4009 |
| 4010 TransportSecurityState* security_state = |
| 4011 default_context_.transport_security_state(); |
| 4012 bool sni_available = true; |
| 4013 TransportSecurityState::DomainState domain_state; |
| 4014 EXPECT_FALSE(security_state->GetDomainState( |
| 4015 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 4016 } |
| 4017 |
| 3984 TEST_F(URLRequestTestHTTP, ProcessSTSOnce) { | 4018 TEST_F(URLRequestTestHTTP, ProcessSTSOnce) { |
| 3985 SpawnedTestServer::SSLOptions ssl_options; | 4019 SpawnedTestServer::SSLOptions ssl_options; |
| 3986 SpawnedTestServer https_test_server( | 4020 SpawnedTestServer https_test_server( |
| 3987 SpawnedTestServer::TYPE_HTTPS, | 4021 SpawnedTestServer::TYPE_HTTPS, |
| 3988 ssl_options, | 4022 ssl_options, |
| 3989 base::FilePath(FILE_PATH_LITERAL("net/data/url_request_unittest"))); | 4023 base::FilePath(FILE_PATH_LITERAL("net/data/url_request_unittest"))); |
| 3990 ASSERT_TRUE(https_test_server.Start()); | 4024 ASSERT_TRUE(https_test_server.Start()); |
| 3991 | 4025 |
| 3992 TestDelegate d; | 4026 TestDelegate d; |
| 3993 URLRequest request( | 4027 URLRequest request( |
| 3994 https_test_server.GetURL("files/hsts-multiple-headers.html"), | 4028 https_test_server.GetURL("files/hsts-multiple-headers.html"), |
| 3995 &d, | 4029 &d, |
| 3996 &default_context_); | 4030 &default_context_); |
| 3997 request.Start(); | 4031 request.Start(); |
| 3998 base::MessageLoop::current()->Run(); | 4032 base::MessageLoop::current()->Run(); |
| 3999 | 4033 |
| 4000 // We should have set parameters from the first header, not the second. | 4034 // We should have set parameters from the first header, not the second. |
| 4001 TransportSecurityState* security_state = | 4035 TransportSecurityState* security_state = |
| 4002 default_context_.transport_security_state(); | 4036 default_context_.transport_security_state(); |
| 4003 bool sni_available = true; | 4037 bool sni_available = true; |
| 4004 TransportSecurityState::DomainState domain_state; | 4038 TransportSecurityState::DomainState domain_state; |
| 4005 EXPECT_TRUE(security_state->GetDomainState( | 4039 EXPECT_TRUE(security_state->GetDomainState( |
| 4006 SpawnedTestServer::kLocalhost, sni_available, &domain_state)); | 4040 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 4007 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, | 4041 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, |
| 4008 domain_state.upgrade_mode); | 4042 domain_state.upgrade_mode); |
| 4009 EXPECT_FALSE(domain_state.sts_include_subdomains); | 4043 EXPECT_FALSE(domain_state.sts_include_subdomains); |
| 4010 EXPECT_FALSE(domain_state.pkp_include_subdomains); | 4044 EXPECT_FALSE(domain_state.pkp_include_subdomains); |
| 4011 } | 4045 } |
| 4012 | 4046 |
| 4013 TEST_F(URLRequestTestHTTP, ProcessSTSAndPKP) { | 4047 TEST_F(URLRequestTestHTTP, ProcessSTSAndPKP) { |
| 4014 SpawnedTestServer::SSLOptions ssl_options; | 4048 SpawnedTestServer::SSLOptions ssl_options; |
| 4015 SpawnedTestServer https_test_server( | 4049 SpawnedTestServer https_test_server( |
| 4016 SpawnedTestServer::TYPE_HTTPS, | 4050 SpawnedTestServer::TYPE_HTTPS, |
| 4017 ssl_options, | 4051 ssl_options, |
| 4018 base::FilePath(FILE_PATH_LITERAL("net/data/url_request_unittest"))); | 4052 base::FilePath(FILE_PATH_LITERAL("net/data/url_request_unittest"))); |
| 4019 ASSERT_TRUE(https_test_server.Start()); | 4053 ASSERT_TRUE(https_test_server.Start()); |
| 4020 | 4054 |
| 4021 TestDelegate d; | 4055 TestDelegate d; |
| 4022 URLRequest request( | 4056 URLRequest request( |
| 4023 https_test_server.GetURL("files/hsts-and-hpkp-headers.html"), | 4057 https_test_server.GetURL("files/hsts-and-hpkp-headers.html"), |
| 4024 &d, | 4058 &d, |
| 4025 &default_context_); | 4059 &default_context_); |
| 4026 request.Start(); | 4060 request.Start(); |
| 4027 base::MessageLoop::current()->Run(); | 4061 base::MessageLoop::current()->Run(); |
| 4028 | 4062 |
| 4029 // We should have set parameters from the first header, not the second. | 4063 // We should have set parameters from the first header, not the second. |
| 4030 TransportSecurityState* security_state = | 4064 TransportSecurityState* security_state = |
| 4031 default_context_.transport_security_state(); | 4065 default_context_.transport_security_state(); |
| 4032 bool sni_available = true; | 4066 bool sni_available = true; |
| 4033 TransportSecurityState::DomainState domain_state; | 4067 TransportSecurityState::DomainState domain_state; |
| 4034 EXPECT_TRUE(security_state->GetDomainState( | 4068 EXPECT_TRUE(security_state->GetDomainState( |
| 4035 SpawnedTestServer::kLocalhost, sni_available, &domain_state)); | 4069 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 4036 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, | 4070 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, |
| 4037 domain_state.upgrade_mode); | 4071 domain_state.upgrade_mode); |
| 4038 #if defined(OS_ANDROID) | 4072 #if defined(OS_ANDROID) |
| 4039 // Android's CertVerifyProc does not (yet) handle pins. | 4073 // Android's CertVerifyProc does not (yet) handle pins. |
| 4040 #else | 4074 #else |
| 4041 EXPECT_TRUE(domain_state.HasPublicKeyPins()); | 4075 EXPECT_TRUE(domain_state.HasPublicKeyPins()); |
| 4042 #endif | 4076 #endif |
| 4043 EXPECT_NE(domain_state.upgrade_expiry, | 4077 EXPECT_NE(domain_state.upgrade_expiry, |
| 4044 domain_state.dynamic_spki_hashes_expiry); | 4078 domain_state.dynamic_spki_hashes_expiry); |
| 4045 | 4079 |
| (...skipping 20 matching lines...) Expand all Loading... |
| 4066 &d, | 4100 &d, |
| 4067 &default_context_); | 4101 &default_context_); |
| 4068 request.Start(); | 4102 request.Start(); |
| 4069 base::MessageLoop::current()->Run(); | 4103 base::MessageLoop::current()->Run(); |
| 4070 | 4104 |
| 4071 TransportSecurityState* security_state = | 4105 TransportSecurityState* security_state = |
| 4072 default_context_.transport_security_state(); | 4106 default_context_.transport_security_state(); |
| 4073 bool sni_available = true; | 4107 bool sni_available = true; |
| 4074 TransportSecurityState::DomainState domain_state; | 4108 TransportSecurityState::DomainState domain_state; |
| 4075 EXPECT_TRUE(security_state->GetDomainState( | 4109 EXPECT_TRUE(security_state->GetDomainState( |
| 4076 SpawnedTestServer::kLocalhost, sni_available, &domain_state)); | 4110 SpawnedTestServer::kLocalhost, sni_available, true, &domain_state)); |
| 4077 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, | 4111 EXPECT_EQ(TransportSecurityState::DomainState::MODE_FORCE_HTTPS, |
| 4078 domain_state.upgrade_mode); | 4112 domain_state.upgrade_mode); |
| 4079 #if defined(OS_ANDROID) | 4113 #if defined(OS_ANDROID) |
| 4080 // Android's CertVerifyProc does not (yet) handle pins. | 4114 // Android's CertVerifyProc does not (yet) handle pins. |
| 4081 #else | 4115 #else |
| 4082 EXPECT_TRUE(domain_state.HasPublicKeyPins()); | 4116 EXPECT_TRUE(domain_state.HasPublicKeyPins()); |
| 4083 #endif | 4117 #endif |
| 4084 EXPECT_NE(domain_state.upgrade_expiry, | 4118 EXPECT_NE(domain_state.upgrade_expiry, |
| 4085 domain_state.dynamic_spki_hashes_expiry); | 4119 domain_state.dynamic_spki_hashes_expiry); |
| 4086 | 4120 |
| (...skipping 975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5062 // MockHostResolver in order to direct www.google.com to the testserver. | 5096 // MockHostResolver in order to direct www.google.com to the testserver. |
| 5063 // By default, MockHostResolver maps all hosts to 127.0.0.1. | 5097 // By default, MockHostResolver maps all hosts to 127.0.0.1. |
| 5064 | 5098 |
| 5065 MockHostResolver host_resolver; | 5099 MockHostResolver host_resolver; |
| 5066 TestNetworkDelegate network_delegate; // Must outlive URLRequest. | 5100 TestNetworkDelegate network_delegate; // Must outlive URLRequest. |
| 5067 TestURLRequestContext context(true); | 5101 TestURLRequestContext context(true); |
| 5068 context.set_network_delegate(&network_delegate); | 5102 context.set_network_delegate(&network_delegate); |
| 5069 context.set_host_resolver(&host_resolver); | 5103 context.set_host_resolver(&host_resolver); |
| 5070 TransportSecurityState transport_security_state; | 5104 TransportSecurityState transport_security_state; |
| 5071 TransportSecurityState::DomainState domain_state; | 5105 TransportSecurityState::DomainState domain_state; |
| 5072 EXPECT_TRUE(transport_security_state.GetDomainState("www.google.com", true, | 5106 EXPECT_TRUE(transport_security_state.GetDomainState( |
| 5073 &domain_state)); | 5107 "www.google.com", true, true, &domain_state)); |
| 5074 context.set_transport_security_state(&transport_security_state); | 5108 context.set_transport_security_state(&transport_security_state); |
| 5075 context.Init(); | 5109 context.Init(); |
| 5076 | 5110 |
| 5077 TestDelegate d; | 5111 TestDelegate d; |
| 5078 URLRequest r(GURL(base::StringPrintf("https://www.google.com:%d", | 5112 URLRequest r(GURL(base::StringPrintf("https://www.google.com:%d", |
| 5079 test_server.host_port_pair().port())), | 5113 test_server.host_port_pair().port())), |
| 5080 &d, | 5114 &d, |
| 5081 &context); | 5115 &context); |
| 5082 | 5116 |
| 5083 r.Start(); | 5117 r.Start(); |
| 5084 EXPECT_TRUE(r.is_pending()); | 5118 EXPECT_TRUE(r.is_pending()); |
| 5085 | 5119 |
| 5086 base::MessageLoop::current()->Run(); | 5120 base::MessageLoop::current()->Run(); |
| 5087 | 5121 |
| 5088 EXPECT_EQ(1, d.response_started_count()); | 5122 EXPECT_EQ(1, d.response_started_count()); |
| 5089 EXPECT_FALSE(d.received_data_before_response()); | 5123 EXPECT_FALSE(d.received_data_before_response()); |
| 5090 EXPECT_TRUE(d.have_certificate_errors()); | 5124 EXPECT_TRUE(d.have_certificate_errors()); |
| 5091 EXPECT_TRUE(d.certificate_errors_are_fatal()); | 5125 EXPECT_TRUE(d.certificate_errors_are_fatal()); |
| 5092 | 5126 |
| 5093 // Get a fresh copy of the state, and check that it hasn't been updated. | 5127 // Get a fresh copy of the state, and check that it hasn't been updated. |
| 5094 TransportSecurityState::DomainState new_domain_state; | 5128 TransportSecurityState::DomainState new_domain_state; |
| 5095 EXPECT_TRUE(transport_security_state.GetDomainState("www.google.com", true, | 5129 EXPECT_TRUE(transport_security_state.GetDomainState( |
| 5096 &new_domain_state)); | 5130 "www.google.com", true, true, &new_domain_state)); |
| 5097 EXPECT_EQ(new_domain_state.upgrade_mode, domain_state.upgrade_mode); | 5131 EXPECT_EQ(new_domain_state.upgrade_mode, domain_state.upgrade_mode); |
| 5098 EXPECT_EQ(new_domain_state.sts_include_subdomains, | 5132 EXPECT_EQ(new_domain_state.sts_include_subdomains, |
| 5099 domain_state.sts_include_subdomains); | 5133 domain_state.sts_include_subdomains); |
| 5100 EXPECT_EQ(new_domain_state.pkp_include_subdomains, | 5134 EXPECT_EQ(new_domain_state.pkp_include_subdomains, |
| 5101 domain_state.pkp_include_subdomains); | 5135 domain_state.pkp_include_subdomains); |
| 5102 EXPECT_TRUE(FingerprintsEqual(new_domain_state.static_spki_hashes, | 5136 EXPECT_TRUE(FingerprintsEqual(new_domain_state.static_spki_hashes, |
| 5103 domain_state.static_spki_hashes)); | 5137 domain_state.static_spki_hashes)); |
| 5104 EXPECT_TRUE(FingerprintsEqual(new_domain_state.dynamic_spki_hashes, | 5138 EXPECT_TRUE(FingerprintsEqual(new_domain_state.dynamic_spki_hashes, |
| 5105 domain_state.dynamic_spki_hashes)); | 5139 domain_state.dynamic_spki_hashes)); |
| 5106 EXPECT_TRUE(FingerprintsEqual(new_domain_state.bad_static_spki_hashes, | 5140 EXPECT_TRUE(FingerprintsEqual(new_domain_state.bad_static_spki_hashes, |
| (...skipping 1005 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6112 | 6146 |
| 6113 EXPECT_FALSE(r.is_pending()); | 6147 EXPECT_FALSE(r.is_pending()); |
| 6114 EXPECT_EQ(1, d->response_started_count()); | 6148 EXPECT_EQ(1, d->response_started_count()); |
| 6115 EXPECT_FALSE(d->received_data_before_response()); | 6149 EXPECT_FALSE(d->received_data_before_response()); |
| 6116 EXPECT_EQ(d->bytes_received(), static_cast<int>(file_size)); | 6150 EXPECT_EQ(d->bytes_received(), static_cast<int>(file_size)); |
| 6117 } | 6151 } |
| 6118 } | 6152 } |
| 6119 #endif // !defined(DISABLE_FTP_SUPPORT) | 6153 #endif // !defined(DISABLE_FTP_SUPPORT) |
| 6120 | 6154 |
| 6121 } // namespace net | 6155 } // namespace net |
| OLD | NEW |