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 "net/quic/quic_stream_factory.h" | 5 #include "net/quic/quic_stream_factory.h" |
6 | 6 |
7 #include <ostream> | 7 #include <ostream> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/run_loop.h" | 10 #include "base/run_loop.h" |
(...skipping 1413 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1424 request.Request(host_port_pair_, privacy_mode_, | 1424 request.Request(host_port_pair_, privacy_mode_, |
1425 /*cert_verify_flags=*/0, url_, "GET", net_log_, | 1425 /*cert_verify_flags=*/0, url_, "GET", net_log_, |
1426 callback_.callback())); | 1426 callback_.callback())); |
1427 EXPECT_EQ(OK, callback_.WaitForResult()); | 1427 EXPECT_EQ(OK, callback_.WaitForResult()); |
1428 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); | 1428 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); |
1429 EXPECT_TRUE(stream.get()); | 1429 EXPECT_TRUE(stream.get()); |
1430 | 1430 |
1431 // Cause QUIC stream to be created. | 1431 // Cause QUIC stream to be created. |
1432 HttpRequestInfo request_info; | 1432 HttpRequestInfo request_info; |
1433 request_info.method = "GET"; | 1433 request_info.method = "GET"; |
1434 request_info.url = GURL("https://www.example.org/"); | 1434 request_info.url = url_; |
1435 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, | 1435 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, |
1436 net_log_, CompletionCallback())); | 1436 net_log_, CompletionCallback())); |
1437 | 1437 |
1438 // Ensure that session is alive and active. | 1438 // Ensure that session is alive and active. |
1439 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); | 1439 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); |
1440 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); | 1440 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); |
1441 EXPECT_TRUE(HasActiveSession(host_port_pair_)); | 1441 EXPECT_TRUE(HasActiveSession(host_port_pair_)); |
1442 | 1442 |
1443 // Send GET request on stream. | 1443 // Send GET request on stream. |
1444 HttpResponseInfo response; | 1444 HttpResponseInfo response; |
(...skipping 91 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1536 request.Request(host_port_pair_, privacy_mode_, | 1536 request.Request(host_port_pair_, privacy_mode_, |
1537 /*cert_verify_flags=*/0, url_, "GET", net_log_, | 1537 /*cert_verify_flags=*/0, url_, "GET", net_log_, |
1538 callback_.callback())); | 1538 callback_.callback())); |
1539 EXPECT_EQ(OK, callback_.WaitForResult()); | 1539 EXPECT_EQ(OK, callback_.WaitForResult()); |
1540 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); | 1540 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); |
1541 EXPECT_TRUE(stream.get()); | 1541 EXPECT_TRUE(stream.get()); |
1542 | 1542 |
1543 // Cause QUIC stream to be created. | 1543 // Cause QUIC stream to be created. |
1544 HttpRequestInfo request_info; | 1544 HttpRequestInfo request_info; |
1545 request_info.method = "GET"; | 1545 request_info.method = "GET"; |
1546 request_info.url = GURL("https://www.example.org/"); | 1546 request_info.url = url_; |
1547 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, | 1547 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, |
1548 net_log_, CompletionCallback())); | 1548 net_log_, CompletionCallback())); |
1549 | 1549 |
1550 // Ensure that session is alive and active. | 1550 // Ensure that session is alive and active. |
1551 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); | 1551 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); |
1552 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); | 1552 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); |
1553 EXPECT_TRUE(HasActiveSession(host_port_pair_)); | 1553 EXPECT_TRUE(HasActiveSession(host_port_pair_)); |
1554 | 1554 |
1555 // Send GET request on stream. | 1555 // Send GET request on stream. |
1556 HttpResponseInfo response_info; | 1556 HttpResponseInfo response_info; |
(...skipping 566 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2123 request.Request(host_port_pair_, privacy_mode_, | 2123 request.Request(host_port_pair_, privacy_mode_, |
2124 /*cert_verify_flags=*/0, url_, "GET", net_log_, | 2124 /*cert_verify_flags=*/0, url_, "GET", net_log_, |
2125 callback_.callback())); | 2125 callback_.callback())); |
2126 EXPECT_EQ(OK, callback_.WaitForResult()); | 2126 EXPECT_EQ(OK, callback_.WaitForResult()); |
2127 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); | 2127 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); |
2128 EXPECT_TRUE(stream.get()); | 2128 EXPECT_TRUE(stream.get()); |
2129 | 2129 |
2130 // Cause QUIC stream to be created. | 2130 // Cause QUIC stream to be created. |
2131 HttpRequestInfo request_info; | 2131 HttpRequestInfo request_info; |
2132 request_info.method = "GET"; | 2132 request_info.method = "GET"; |
2133 request_info.url = GURL("https://www.example.org/"); | 2133 request_info.url = url_; |
2134 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, | 2134 EXPECT_EQ(OK, stream->InitializeStream(&request_info, DEFAULT_PRIORITY, |
2135 net_log_, CompletionCallback())); | 2135 net_log_, CompletionCallback())); |
2136 | 2136 |
2137 // Ensure that session is alive and active. | 2137 // Ensure that session is alive and active. |
2138 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); | 2138 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); |
2139 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); | 2139 EXPECT_TRUE(QuicStreamFactoryPeer::IsLiveSession(factory_.get(), session)); |
2140 EXPECT_TRUE(HasActiveSession(host_port_pair_)); | 2140 EXPECT_TRUE(HasActiveSession(host_port_pair_)); |
2141 | 2141 |
2142 // Send GET request on stream. | 2142 // Send GET request on stream. |
2143 HttpResponseInfo response; | 2143 HttpResponseInfo response; |
(...skipping 503 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2647 SequencedSocketData socket_data2(reads2, arraysize(reads2), nullptr, 0); | 2647 SequencedSocketData socket_data2(reads2, arraysize(reads2), nullptr, 0); |
2648 socket_factory_.AddSocketDataProvider(&socket_data2); | 2648 socket_factory_.AddSocketDataProvider(&socket_data2); |
2649 | 2649 |
2650 const AlternativeService alternative_service1(QUIC, host_port_pair_.host(), | 2650 const AlternativeService alternative_service1(QUIC, host_port_pair_.host(), |
2651 host_port_pair_.port()); | 2651 host_port_pair_.port()); |
2652 AlternativeServiceInfoVector alternative_service_info_vector; | 2652 AlternativeServiceInfoVector alternative_service_info_vector; |
2653 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 2653 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
2654 alternative_service_info_vector.push_back( | 2654 alternative_service_info_vector.push_back( |
2655 AlternativeServiceInfo(alternative_service1, expiration)); | 2655 AlternativeServiceInfo(alternative_service1, expiration)); |
2656 | 2656 |
2657 url::SchemeHostPort server("https", kDefaultServerHostName, | |
2658 kDefaultServerPort); | |
2659 | |
2660 http_server_properties_.SetAlternativeServices( | 2657 http_server_properties_.SetAlternativeServices( |
2661 server, alternative_service_info_vector); | 2658 url::SchemeHostPort(url_), alternative_service_info_vector); |
2662 | 2659 |
2663 crypto_client_stream_factory_.set_handshake_mode( | 2660 crypto_client_stream_factory_.set_handshake_mode( |
2664 MockCryptoClientStream::ZERO_RTT); | 2661 MockCryptoClientStream::ZERO_RTT); |
2665 host_resolver_.set_synchronous_mode(true); | 2662 host_resolver_.set_synchronous_mode(true); |
2666 host_resolver_.rules()->AddIPLiteralRule(host_port_pair_.host(), | 2663 host_resolver_.rules()->AddIPLiteralRule(host_port_pair_.host(), |
2667 "192.168.0.1", ""); | 2664 "192.168.0.1", ""); |
2668 | 2665 |
2669 QuicStreamRequest request(factory_.get()); | 2666 QuicStreamRequest request(factory_.get()); |
2670 QuicServerId server_id(host_port_pair_, privacy_mode_); | 2667 QuicServerId server_id(host_port_pair_, privacy_mode_); |
2671 EXPECT_EQ(ERR_IO_PENDING, | 2668 EXPECT_EQ(ERR_IO_PENDING, |
(...skipping 993 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3665 ProofVerifyDetailsChromium verify_details = DefaultProofVerifyDetails(); | 3662 ProofVerifyDetailsChromium verify_details = DefaultProofVerifyDetails(); |
3666 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); | 3663 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); |
3667 bool delay_tcp_race = QuicStreamFactoryPeer::GetDelayTcpRace(factory_.get()); | 3664 bool delay_tcp_race = QuicStreamFactoryPeer::GetDelayTcpRace(factory_.get()); |
3668 QuicStreamFactoryPeer::SetDelayTcpRace(factory_.get(), false); | 3665 QuicStreamFactoryPeer::SetDelayTcpRace(factory_.get(), false); |
3669 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)}; | 3666 MockRead reads[] = {MockRead(SYNCHRONOUS, ERR_IO_PENDING, 0)}; |
3670 SequencedSocketData socket_data(reads, arraysize(reads), nullptr, 0); | 3667 SequencedSocketData socket_data(reads, arraysize(reads), nullptr, 0); |
3671 socket_factory_.AddSocketDataProvider(&socket_data); | 3668 socket_factory_.AddSocketDataProvider(&socket_data); |
3672 | 3669 |
3673 ServerNetworkStats stats1; | 3670 ServerNetworkStats stats1; |
3674 stats1.srtt = base::TimeDelta::FromMicroseconds(10); | 3671 stats1.srtt = base::TimeDelta::FromMicroseconds(10); |
3675 url::SchemeHostPort server("https", kDefaultServerHostName, | 3672 http_server_properties_.SetServerNetworkStats(url::SchemeHostPort(url_), |
3676 kDefaultServerPort); | 3673 stats1); |
3677 http_server_properties_.SetServerNetworkStats(server, stats1); | |
3678 | 3674 |
3679 crypto_client_stream_factory_.set_handshake_mode( | 3675 crypto_client_stream_factory_.set_handshake_mode( |
3680 MockCryptoClientStream::COLD_START); | 3676 MockCryptoClientStream::COLD_START); |
3681 host_resolver_.set_synchronous_mode(true); | 3677 host_resolver_.set_synchronous_mode(true); |
3682 host_resolver_.rules()->AddIPLiteralRule(host_port_pair_.host(), | 3678 host_resolver_.rules()->AddIPLiteralRule(host_port_pair_.host(), |
3683 "192.168.0.1", ""); | 3679 "192.168.0.1", ""); |
3684 | 3680 |
3685 QuicStreamRequest request(factory_.get()); | 3681 QuicStreamRequest request(factory_.get()); |
3686 EXPECT_EQ(ERR_IO_PENDING, | 3682 EXPECT_EQ(ERR_IO_PENDING, |
3687 request.Request(host_port_pair_, privacy_mode_, | 3683 request.Request(host_port_pair_, privacy_mode_, |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3721 EXPECT_EQ(500, config->IdleConnectionStateLifetime().ToSeconds()); | 3717 EXPECT_EQ(500, config->IdleConnectionStateLifetime().ToSeconds()); |
3722 | 3718 |
3723 QuicStreamFactoryPeer::SetTaskRunner(factory_.get(), runner_.get()); | 3719 QuicStreamFactoryPeer::SetTaskRunner(factory_.get(), runner_.get()); |
3724 | 3720 |
3725 const AlternativeService alternative_service1(QUIC, host_port_pair_.host(), | 3721 const AlternativeService alternative_service1(QUIC, host_port_pair_.host(), |
3726 host_port_pair_.port()); | 3722 host_port_pair_.port()); |
3727 AlternativeServiceInfoVector alternative_service_info_vector; | 3723 AlternativeServiceInfoVector alternative_service_info_vector; |
3728 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); | 3724 base::Time expiration = base::Time::Now() + base::TimeDelta::FromDays(1); |
3729 alternative_service_info_vector.push_back( | 3725 alternative_service_info_vector.push_back( |
3730 AlternativeServiceInfo(alternative_service1, expiration)); | 3726 AlternativeServiceInfo(alternative_service1, expiration)); |
3731 url::SchemeHostPort server("https", kDefaultServerHostName, | |
3732 kDefaultServerPort); | |
3733 http_server_properties_.SetAlternativeServices( | 3727 http_server_properties_.SetAlternativeServices( |
3734 server, alternative_service_info_vector); | 3728 url::SchemeHostPort(url_), alternative_service_info_vector); |
3735 | 3729 |
3736 HostPortPair host_port_pair2(kServer2HostName, kDefaultServerPort); | 3730 HostPortPair host_port_pair2(kServer2HostName, kDefaultServerPort); |
3737 url::SchemeHostPort server2("https", kServer2HostName, kDefaultServerPort); | 3731 url::SchemeHostPort server2("https", kServer2HostName, kDefaultServerPort); |
3738 const AlternativeService alternative_service2(QUIC, host_port_pair2.host(), | 3732 const AlternativeService alternative_service2(QUIC, host_port_pair2.host(), |
3739 host_port_pair2.port()); | 3733 host_port_pair2.port()); |
3740 AlternativeServiceInfoVector alternative_service_info_vector2; | 3734 AlternativeServiceInfoVector alternative_service_info_vector2; |
3741 alternative_service_info_vector2.push_back( | 3735 alternative_service_info_vector2.push_back( |
3742 AlternativeServiceInfo(alternative_service2, expiration)); | 3736 AlternativeServiceInfo(alternative_service2, expiration)); |
3743 http_server_properties_.SetAlternativeServices( | 3737 http_server_properties_.SetAlternativeServices( |
3744 server2, alternative_service_info_vector2); | 3738 server2, alternative_service_info_vector2); |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4006 EXPECT_EQ(OK, callback_.WaitForResult()); | 4000 EXPECT_EQ(OK, callback_.WaitForResult()); |
4007 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); | 4001 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); |
4008 EXPECT_TRUE(stream.get()); | 4002 EXPECT_TRUE(stream.get()); |
4009 | 4003 |
4010 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); | 4004 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); |
4011 | 4005 |
4012 string url = "https://www.example.org/"; | 4006 string url = "https://www.example.org/"; |
4013 | 4007 |
4014 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); | 4008 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); |
4015 | 4009 |
4016 QuicClientPromisedInfo promised(session, kServerDataStreamId1, url); | 4010 QuicClientPromisedInfo promised(session, kServerDataStreamId1, kDefaultUrl); |
4017 (*QuicStreamFactoryPeer::GetPushPromiseIndex(factory_.get()) | 4011 (*QuicStreamFactoryPeer::GetPushPromiseIndex(factory_.get()) |
4018 ->promised_by_url())[url] = &promised; | 4012 ->promised_by_url())[kDefaultUrl] = &promised; |
4019 | 4013 |
4020 QuicStreamRequest request2(factory_.get()); | 4014 QuicStreamRequest request2(factory_.get()); |
4021 EXPECT_EQ(OK, request2.Request(host_port_pair_, privacy_mode_, | 4015 EXPECT_EQ(OK, request2.Request(host_port_pair_, privacy_mode_, |
4022 /*cert_verify_flags=*/0, GURL(url), "GET", | 4016 /*cert_verify_flags=*/0, url_, "GET", net_log_, |
4023 net_log_, callback_.callback())); | 4017 callback_.callback())); |
4024 | 4018 |
4025 EXPECT_EQ(1, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); | 4019 EXPECT_EQ(1, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); |
4026 } | 4020 } |
4027 | 4021 |
4028 TEST_P(QuicStreamFactoryTest, ServerPushPrivacyModeMismatch) { | 4022 TEST_P(QuicStreamFactoryTest, ServerPushPrivacyModeMismatch) { |
4029 Initialize(); | 4023 Initialize(); |
4030 ProofVerifyDetailsChromium verify_details = DefaultProofVerifyDetails(); | 4024 ProofVerifyDetailsChromium verify_details = DefaultProofVerifyDetails(); |
4031 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); | 4025 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); |
4032 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); | 4026 crypto_client_stream_factory_.AddProofVerifyDetails(&verify_details); |
4033 | 4027 |
(...skipping 20 matching lines...) Expand all Loading... |
4054 | 4048 |
4055 EXPECT_EQ(OK, callback_.WaitForResult()); | 4049 EXPECT_EQ(OK, callback_.WaitForResult()); |
4056 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); | 4050 std::unique_ptr<QuicHttpStream> stream = request.CreateStream(); |
4057 EXPECT_TRUE(stream.get()); | 4051 EXPECT_TRUE(stream.get()); |
4058 | 4052 |
4059 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); | 4053 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); |
4060 | 4054 |
4061 string url = "https://www.example.org/"; | 4055 string url = "https://www.example.org/"; |
4062 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); | 4056 QuicChromiumClientSession* session = GetActiveSession(host_port_pair_); |
4063 | 4057 |
4064 QuicClientPromisedInfo promised(session, kServerDataStreamId1, url); | 4058 QuicClientPromisedInfo promised(session, kServerDataStreamId1, kDefaultUrl); |
4065 | 4059 |
4066 QuicClientPushPromiseIndex* index = | 4060 QuicClientPushPromiseIndex* index = |
4067 QuicStreamFactoryPeer::GetPushPromiseIndex(factory_.get()); | 4061 QuicStreamFactoryPeer::GetPushPromiseIndex(factory_.get()); |
4068 | 4062 |
4069 (*index->promised_by_url())[url] = &promised; | 4063 (*index->promised_by_url())[kDefaultUrl] = &promised; |
4070 EXPECT_EQ(index->GetPromised(url), &promised); | 4064 EXPECT_EQ(index->GetPromised(kDefaultUrl), &promised); |
4071 | 4065 |
4072 // Doing the request should not use the push stream, but rather | 4066 // Doing the request should not use the push stream, but rather |
4073 // cancel it because the privacy modes do not match. | 4067 // cancel it because the privacy modes do not match. |
4074 QuicStreamRequest request2(factory_.get()); | 4068 QuicStreamRequest request2(factory_.get()); |
4075 EXPECT_EQ(ERR_IO_PENDING, | 4069 EXPECT_EQ(ERR_IO_PENDING, |
4076 request2.Request(host_port_pair_, PRIVACY_MODE_ENABLED, | 4070 request2.Request(host_port_pair_, PRIVACY_MODE_ENABLED, |
4077 /*cert_verify_flags=*/0, GURL(url), "GET", | 4071 /*cert_verify_flags=*/0, url_, "GET", net_log_, |
4078 net_log_, callback_.callback())); | 4072 callback_.callback())); |
4079 | 4073 |
4080 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); | 4074 EXPECT_EQ(0, QuicStreamFactoryPeer::GetNumPushStreamsCreated(factory_.get())); |
4081 EXPECT_EQ(index->GetPromised(url), nullptr); | 4075 EXPECT_EQ(index->GetPromised(kDefaultUrl), nullptr); |
4082 | 4076 |
4083 EXPECT_EQ(OK, callback_.WaitForResult()); | 4077 EXPECT_EQ(OK, callback_.WaitForResult()); |
4084 std::unique_ptr<QuicHttpStream> stream2 = request2.CreateStream(); | 4078 std::unique_ptr<QuicHttpStream> stream2 = request2.CreateStream(); |
4085 EXPECT_TRUE(stream2.get()); | 4079 EXPECT_TRUE(stream2.get()); |
4086 | 4080 |
4087 EXPECT_TRUE(socket_data1.AllReadDataConsumed()); | 4081 EXPECT_TRUE(socket_data1.AllReadDataConsumed()); |
4088 EXPECT_TRUE(socket_data1.AllWriteDataConsumed()); | 4082 EXPECT_TRUE(socket_data1.AllWriteDataConsumed()); |
4089 EXPECT_TRUE(socket_data2.AllReadDataConsumed()); | 4083 EXPECT_TRUE(socket_data2.AllReadDataConsumed()); |
4090 EXPECT_TRUE(socket_data2.AllWriteDataConsumed()); | 4084 EXPECT_TRUE(socket_data2.AllWriteDataConsumed()); |
4091 } | 4085 } |
(...skipping 257 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4349 EXPECT_NE(session1, session2); | 4343 EXPECT_NE(session1, session2); |
4350 | 4344 |
4351 EXPECT_EQ(QuicServerId(origin1_, privacy_mode_), session1->server_id()); | 4345 EXPECT_EQ(QuicServerId(origin1_, privacy_mode_), session1->server_id()); |
4352 EXPECT_EQ(QuicServerId(origin2_, privacy_mode_), session2->server_id()); | 4346 EXPECT_EQ(QuicServerId(origin2_, privacy_mode_), session2->server_id()); |
4353 | 4347 |
4354 EXPECT_TRUE(AllDataConsumed()); | 4348 EXPECT_TRUE(AllDataConsumed()); |
4355 } | 4349 } |
4356 | 4350 |
4357 } // namespace test | 4351 } // namespace test |
4358 } // namespace net | 4352 } // namespace net |
OLD | NEW |