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

Side by Side Diff: net/tools/quic/end_to_end_test.cc

Issue 706203003: Update from https://crrev.com/303153 (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 6 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
« no previous file with comments | « net/test/spawned_test_server/local_test_server_win.cc ('k') | net/tools/quic/quic_client.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 (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 <stddef.h> 5 #include <stddef.h>
6 #include <string> 6 #include <string>
7 #include <sys/epoll.h> 7 #include <sys/epoll.h>
8 #include <vector> 8 #include <vector>
9 9
10 #include "base/basictypes.h" 10 #include "base/basictypes.h"
(...skipping 922 matching lines...) Expand 10 before | Expand all | Expand 10 after
933 // Pause the server so we can access the server's internals without races. 933 // Pause the server so we can access the server's internals without races.
934 server_thread_->Pause(); 934 server_thread_->Pause();
935 QuicDispatcher* dispatcher = 935 QuicDispatcher* dispatcher =
936 QuicServerPeer::GetDispatcher(server_thread_->server()); 936 QuicServerPeer::GetDispatcher(server_thread_->server());
937 ASSERT_EQ(1u, dispatcher->session_map().size()); 937 ASSERT_EQ(1u, dispatcher->session_map().size());
938 const QuicSentPacketManager& client_sent_packet_manager = 938 const QuicSentPacketManager& client_sent_packet_manager =
939 client_->client()->session()->connection()->sent_packet_manager(); 939 client_->client()->session()->connection()->sent_packet_manager();
940 const QuicSentPacketManager& server_sent_packet_manager = 940 const QuicSentPacketManager& server_sent_packet_manager =
941 *GetSentPacketManagerFromFirstServerSession(); 941 *GetSentPacketManagerFromFirstServerSession();
942 942
943 // The client shouldn't set it's initial window based on the negotiated value. 943 // The client shouldn't set its initial window based on the negotiated value.
944 EXPECT_EQ(kDefaultInitialWindow * kDefaultTCPMSS, 944 EXPECT_EQ(kDefaultInitialWindow,
945 client_sent_packet_manager.GetCongestionWindow()); 945 client_sent_packet_manager.GetCongestionWindowInTcpMss());
946 EXPECT_EQ(kMaxInitialWindow * kDefaultTCPMSS, 946 EXPECT_EQ(kMaxInitialWindow,
947 server_sent_packet_manager.GetCongestionWindow()); 947 server_sent_packet_manager.GetCongestionWindowInTcpMss());
948 948
949 EXPECT_EQ(GetParam().use_pacing, server_sent_packet_manager.using_pacing()); 949 EXPECT_EQ(GetParam().use_pacing, server_sent_packet_manager.using_pacing());
950 EXPECT_EQ(GetParam().use_pacing, client_sent_packet_manager.using_pacing()); 950 EXPECT_EQ(GetParam().use_pacing, client_sent_packet_manager.using_pacing());
951 951
952 // The client *should* set the intitial RTT. 952 // The client *should* set the intitial RTT.
953 EXPECT_EQ(1000u, client_sent_packet_manager.GetRttStats()->initial_rtt_us()); 953 EXPECT_EQ(1000u, client_sent_packet_manager.GetRttStats()->initial_rtt_us());
954 EXPECT_EQ(1000u, server_sent_packet_manager.GetRttStats()->initial_rtt_us()); 954 EXPECT_EQ(1000u, server_sent_packet_manager.GetRttStats()->initial_rtt_us());
955 955
956 // Now use the negotiated limits with packet loss. 956 // Now use the negotiated limits with packet loss.
957 SetPacketLossPercentage(30); 957 SetPacketLossPercentage(30);
(...skipping 22 matching lines...) Expand all
980 server_thread_->WaitForCryptoHandshakeConfirmed(); 980 server_thread_->WaitForCryptoHandshakeConfirmed();
981 981
982 // Pause the server so we can access the server's internals without races. 982 // Pause the server so we can access the server's internals without races.
983 server_thread_->Pause(); 983 server_thread_->Pause();
984 QuicDispatcher* dispatcher = 984 QuicDispatcher* dispatcher =
985 QuicServerPeer::GetDispatcher(server_thread_->server()); 985 QuicServerPeer::GetDispatcher(server_thread_->server());
986 ASSERT_EQ(1u, dispatcher->session_map().size()); 986 ASSERT_EQ(1u, dispatcher->session_map().size());
987 QuicSession* session = dispatcher->session_map().begin()->second; 987 QuicSession* session = dispatcher->session_map().begin()->second;
988 const QuicSentPacketManager& client_sent_packet_manager = 988 const QuicSentPacketManager& client_sent_packet_manager =
989 client_->client()->session()->connection()->sent_packet_manager(); 989 client_->client()->session()->connection()->sent_packet_manager();
990 const QuicSentPacketManager& server_sent_packet_manager =
991 session->connection()->sent_packet_manager();
992 990
993 // Now that acks have been exchanged, the RTT estimate has decreased on the 991 // Now that acks have been exchanged, the RTT estimate has decreased on the
994 // server and is not infinite on the client. 992 // server and is not infinite on the client.
995 EXPECT_FALSE( 993 EXPECT_FALSE(
996 client_sent_packet_manager.GetRttStats()->SmoothedRtt().IsInfinite()); 994 client_sent_packet_manager.GetRttStats()->smoothed_rtt().IsInfinite());
995 const RttStats& server_rtt_stats =
996 *session->connection()->sent_packet_manager().GetRttStats();
997 EXPECT_EQ(static_cast<int64>(kMaxInitialRoundTripTimeUs), 997 EXPECT_EQ(static_cast<int64>(kMaxInitialRoundTripTimeUs),
998 server_sent_packet_manager.GetRttStats()->initial_rtt_us()); 998 server_rtt_stats.initial_rtt_us());
999 EXPECT_GE( 999 EXPECT_GE(static_cast<int64>(kMaxInitialRoundTripTimeUs),
1000 static_cast<int64>(kMaxInitialRoundTripTimeUs), 1000 server_rtt_stats.smoothed_rtt().ToMicroseconds());
1001 server_sent_packet_manager.GetRttStats()->SmoothedRtt().ToMicroseconds());
1002 server_thread_->Resume(); 1001 server_thread_->Resume();
1003 } 1002 }
1004 1003
1005 TEST_P(EndToEndTest, MinInitialRTT) { 1004 TEST_P(EndToEndTest, MinInitialRTT) {
1006 // Client tries to suggest 0 and the server uses the default. 1005 // Client tries to suggest 0 and the server uses the default.
1007 client_config_.SetInitialRoundTripTimeUsToSend(0); 1006 client_config_.SetInitialRoundTripTimeUsToSend(0);
1008 1007
1009 ASSERT_TRUE(Initialize()); 1008 ASSERT_TRUE(Initialize());
1010 client_->client()->WaitForCryptoHandshakeConfirmed(); 1009 client_->client()->WaitForCryptoHandshakeConfirmed();
1011 server_thread_->WaitForCryptoHandshakeConfirmed(); 1010 server_thread_->WaitForCryptoHandshakeConfirmed();
1012 1011
1013 // Pause the server so we can access the server's internals without races. 1012 // Pause the server so we can access the server's internals without races.
1014 server_thread_->Pause(); 1013 server_thread_->Pause();
1015 QuicDispatcher* dispatcher = 1014 QuicDispatcher* dispatcher =
1016 QuicServerPeer::GetDispatcher(server_thread_->server()); 1015 QuicServerPeer::GetDispatcher(server_thread_->server());
1017 ASSERT_EQ(1u, dispatcher->session_map().size()); 1016 ASSERT_EQ(1u, dispatcher->session_map().size());
1018 QuicSession* session = dispatcher->session_map().begin()->second; 1017 QuicSession* session = dispatcher->session_map().begin()->second;
1019 const QuicSentPacketManager& client_sent_packet_manager = 1018 const QuicSentPacketManager& client_sent_packet_manager =
1020 client_->client()->session()->connection()->sent_packet_manager(); 1019 client_->client()->session()->connection()->sent_packet_manager();
1021 const QuicSentPacketManager& server_sent_packet_manager = 1020 const QuicSentPacketManager& server_sent_packet_manager =
1022 session->connection()->sent_packet_manager(); 1021 session->connection()->sent_packet_manager();
1023 1022
1024 // Now that acks have been exchanged, the RTT estimate has decreased on the 1023 // Now that acks have been exchanged, the RTT estimate has decreased on the
1025 // server and is not infinite on the client. 1024 // server and is not infinite on the client.
1026 EXPECT_FALSE( 1025 EXPECT_FALSE(
1027 client_sent_packet_manager.GetRttStats()->SmoothedRtt().IsInfinite()); 1026 client_sent_packet_manager.GetRttStats()->smoothed_rtt().IsInfinite());
1028 // Expect the default rtt of 100ms. 1027 // Expect the default rtt of 100ms.
1029 EXPECT_EQ(static_cast<int64>(100 * base::Time::kMicrosecondsPerMillisecond), 1028 EXPECT_EQ(static_cast<int64>(100 * base::Time::kMicrosecondsPerMillisecond),
1030 server_sent_packet_manager.GetRttStats()->initial_rtt_us()); 1029 server_sent_packet_manager.GetRttStats()->initial_rtt_us());
1031 // Ensure the bandwidth is valid. 1030 // Ensure the bandwidth is valid.
1032 client_sent_packet_manager.BandwidthEstimate(); 1031 client_sent_packet_manager.BandwidthEstimate();
1033 server_sent_packet_manager.BandwidthEstimate(); 1032 server_sent_packet_manager.BandwidthEstimate();
1034 server_thread_->Resume(); 1033 server_thread_->Resume();
1035 } 1034 }
1036 1035
1037 TEST_P(EndToEndTest, ResetConnection) { 1036 TEST_P(EndToEndTest, ResetConnection) {
(...skipping 322 matching lines...) Expand 10 before | Expand all | Expand 10 after
1360 QuicSession* session = dispatcher->session_map().begin()->second; 1359 QuicSession* session = dispatcher->session_map().begin()->second;
1361 EXPECT_EQ(0u, QuicSessionPeer::GetLocallyClosedStreamsHighestOffset( 1360 EXPECT_EQ(0u, QuicSessionPeer::GetLocallyClosedStreamsHighestOffset(
1362 session).size()); 1361 session).size());
1363 server_thread_->Resume(); 1362 server_thread_->Resume();
1364 } 1363 }
1365 1364
1366 } // namespace 1365 } // namespace
1367 } // namespace test 1366 } // namespace test
1368 } // namespace tools 1367 } // namespace tools
1369 } // namespace net 1368 } // namespace net
OLDNEW
« no previous file with comments | « net/test/spawned_test_server/local_test_server_win.cc ('k') | net/tools/quic/quic_client.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698