Index: net/url_request/url_request_unittest.cc |
diff --git a/net/url_request/url_request_unittest.cc b/net/url_request/url_request_unittest.cc |
index 1eb97117963cabd5266c74476d2b8513465b929e..7282a0e54070ce6c5c9e8ca5468d0b0cc56167d7 100644 |
--- a/net/url_request/url_request_unittest.cc |
+++ b/net/url_request/url_request_unittest.cc |
@@ -7868,127 +7868,6 @@ TEST_F(URLRequestTestHTTP, SetSubsequentJobPriority) { |
EXPECT_EQ(LOW, job_priority); |
} |
-TEST_F(URLRequestTest, QuicServerInfoFactoryTest) { |
- HttpNetworkSession::Params params; |
- |
- MockClientSocketFactory socket_factory; |
- MockCryptoClientStreamFactory crypto_client_stream_factory; |
- MockHostResolver host_resolver; |
- MockCertVerifier cert_verifier; |
- CTPolicyEnforcer ct_policy_enforcer; |
- TransportSecurityState transport_security_state; |
- std::unique_ptr<CTVerifier> cert_transparency_verifier( |
- new MultiLogCTVerifier()); |
- std::unique_ptr<ProxyService> proxy_service = ProxyService::CreateDirect(); |
- scoped_refptr<SSLConfigServiceDefaults> ssl_config_service( |
- new SSLConfigServiceDefaults); |
- HttpServerPropertiesImpl http_server_properties; |
- // Set up the quic stream factory. |
- params.enable_quic = true; |
- params.client_socket_factory = &socket_factory; |
- params.quic_crypto_client_stream_factory = &crypto_client_stream_factory; |
- params.host_resolver = &host_resolver; |
- params.cert_verifier = &cert_verifier; |
- params.ct_policy_enforcer = &ct_policy_enforcer; |
- params.transport_security_state = &transport_security_state; |
- params.cert_transparency_verifier = cert_transparency_verifier.get(); |
- |
- params.proxy_service = proxy_service.get(); |
- params.ssl_config_service = ssl_config_service.get(); |
- params.http_server_properties = &http_server_properties; |
- |
- HttpNetworkSession session(params); |
- DCHECK(session.quic_stream_factory()); |
- |
- std::unique_ptr<HttpNetworkLayer> network_layer1( |
- new HttpNetworkLayer(&session)); |
- |
- HttpCache main_cache(std::move(network_layer1), |
- HttpCache::DefaultBackend::InMemory(0), |
- true /* is_main_cache */); |
- |
- EXPECT_TRUE(session.quic_stream_factory()->has_quic_server_info_factory()); |
- |
- default_context_.set_http_transaction_factory(&main_cache); |
- |
- QuicServerInfoFactory* quic_server_info_factory = |
- session.quic_stream_factory()->quic_server_info_factory(); |
- DCHECK(quic_server_info_factory); |
- |
- QuicServerId server_id("www.google.com", 443, PRIVACY_MODE_DISABLED); |
- const string server_config_a = "server_config_a"; |
- const string source_address_token_a = "source_address_token_a"; |
- const string cert_sct_a = "cert_sct_a"; |
- const string chlo_hash_a = "chlo_hash_a"; |
- const string server_config_sig_a = "server_config_sig_a"; |
- const string cert_a = "cert_a"; |
- const string cert_b = "cert_b"; |
- |
- { |
- // Store a QuicServerInfo to the quic server info factory. |
- TestCompletionCallback cb; |
- std::unique_ptr<QuicServerInfo> quic_server_info = |
- quic_server_info_factory->GetForServer(server_id); |
- quic_server_info->Start(); |
- int rv = quic_server_info->WaitForDataReady(cb.callback()); |
- EXPECT_THAT(cb.GetResult(rv), IsOk()); |
- |
- QuicServerInfo::State* state = quic_server_info->mutable_state(); |
- EXPECT_TRUE(state->certs.empty()); |
- |
- state->server_config = server_config_a; |
- state->source_address_token = source_address_token_a; |
- state->cert_sct = cert_sct_a; |
- state->chlo_hash = chlo_hash_a; |
- state->server_config_sig = server_config_sig_a; |
- state->certs.push_back(cert_a); |
- quic_server_info->Persist(); |
- base::RunLoop().RunUntilIdle(); |
- } |
- |
- // Retrieve the QuicServerInfo from the quic server info factory and verify |
- // the data is correct. |
- { |
- TestCompletionCallback cb; |
- std::unique_ptr<QuicServerInfo> quic_server_info = |
- quic_server_info_factory->GetForServer(server_id); |
- quic_server_info->Start(); |
- int rv = quic_server_info->WaitForDataReady(cb.callback()); |
- EXPECT_THAT(cb.GetResult(rv), IsOk()); |
- |
- QuicServerInfo::State* state = quic_server_info->mutable_state(); |
- EXPECT_TRUE(quic_server_info->IsDataReady()); |
- EXPECT_EQ(server_config_a, state->server_config); |
- EXPECT_EQ(source_address_token_a, state->source_address_token); |
- EXPECT_EQ(cert_sct_a, state->cert_sct); |
- EXPECT_EQ(chlo_hash_a, state->chlo_hash); |
- EXPECT_EQ(server_config_sig_a, state->server_config_sig); |
- EXPECT_EQ(1U, state->certs.size()); |
- EXPECT_EQ(cert_a, state->certs[0]); |
- |
- // Update the data. |
- state->certs.push_back(cert_b); |
- quic_server_info->Persist(); |
- base::RunLoop().RunUntilIdle(); |
- } |
- |
- { |
- // Verify data has been successfully updated. |
- TestCompletionCallback cb; |
- std::unique_ptr<QuicServerInfo> quic_server_info = |
- quic_server_info_factory->GetForServer(server_id); |
- quic_server_info->Start(); |
- int rv = quic_server_info->WaitForDataReady(cb.callback()); |
- EXPECT_THAT(cb.GetResult(rv), IsOk()); |
- |
- QuicServerInfo::State* state = quic_server_info->mutable_state(); |
- EXPECT_TRUE(quic_server_info->IsDataReady()); |
- EXPECT_EQ(2U, state->certs.size()); |
- EXPECT_EQ(cert_a, state->certs[0]); |
- EXPECT_EQ(cert_b, state->certs[1]); |
- } |
-} |
- |
// Check that creating a network request while entering/exiting suspend mode |
// fails as it should. This is the only case where an HttpTransactionFactory |
// does not return an HttpTransaction. |