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

Unified Diff: net/tools/quic/quic_time_wait_list_manager_test.cc

Issue 1138443003: Land Recent QUIC Changes until 05/13/2015 (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: compile error fixes Created 5 years, 7 months 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 side-by-side diff with in-line comments
Download patch
Index: net/tools/quic/quic_time_wait_list_manager_test.cc
diff --git a/net/tools/quic/quic_time_wait_list_manager_test.cc b/net/tools/quic/quic_time_wait_list_manager_test.cc
index 42073146e7dacfbc16be966b46fed73c7779f46f..8f12c7eb675071284d9c4ef7640ca26e8be44088 100644
--- a/net/tools/quic/quic_time_wait_list_manager_test.cc
+++ b/net/tools/quic/quic_time_wait_list_manager_test.cc
@@ -114,14 +114,22 @@ class QuicTimeWaitListManagerTest : public ::testing::Test {
}
void AddConnectionId(QuicConnectionId connection_id) {
- AddConnectionId(connection_id, QuicVersionMax(), nullptr);
+ AddConnectionId(connection_id, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/false, nullptr);
+ }
+
+ void AddStatelessConnectionId(QuicConnectionId connection_id) {
+ time_wait_list_manager_.AddConnectionIdToTimeWait(
+ connection_id, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/true, nullptr);
}
void AddConnectionId(QuicConnectionId connection_id,
QuicVersion version,
+ bool connection_rejected_statelessly,
QuicEncryptedPacket* packet) {
time_wait_list_manager_.AddConnectionIdToTimeWait(
- connection_id, version, packet);
+ connection_id, version, connection_rejected_statelessly, packet);
}
bool IsConnectionIdInTimeWait(QuicConnectionId connection_id) {
@@ -231,14 +239,21 @@ TEST_F(QuicTimeWaitListManagerTest, CheckConnectionIdInTimeWait) {
EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_));
}
+TEST_F(QuicTimeWaitListManagerTest, CheckStatelessConnectionIdInTimeWait) {
+ EXPECT_FALSE(IsConnectionIdInTimeWait(connection_id_));
+ EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(connection_id_));
+ AddStatelessConnectionId(connection_id_);
+ EXPECT_EQ(1u, time_wait_list_manager_.num_connections());
+ EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_));
+}
+
TEST_F(QuicTimeWaitListManagerTest, SendConnectionClose) {
const size_t kConnectionCloseLength = 100;
EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(connection_id_));
- AddConnectionId(
- connection_id_,
- QuicVersionMax(),
- new QuicEncryptedPacket(
- new char[kConnectionCloseLength], kConnectionCloseLength, true));
+ AddConnectionId(connection_id_, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/false,
+ new QuicEncryptedPacket(new char[kConnectionCloseLength],
+ kConnectionCloseLength, true));
const int kRandomSequenceNumber = 1;
EXPECT_CALL(writer_, WritePacket(_, kConnectionCloseLength,
server_address_.address(),
@@ -283,6 +298,13 @@ TEST_F(QuicTimeWaitListManagerTest, SendPublicResetWithExponentialBackOff) {
}
}
+TEST_F(QuicTimeWaitListManagerTest, NoPublicResetForStatelessConnections) {
+ EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(connection_id_));
+ AddStatelessConnectionId(connection_id_);
+ const int kRandomSequenceNumber = 1;
+ ProcessPacket(connection_id_, kRandomSequenceNumber);
+}
+
TEST_F(QuicTimeWaitListManagerTest, CleanUpOldConnectionIds) {
const size_t kConnectionIdCount = 100;
const size_t kOldConnectionIdCount = 31;
@@ -406,9 +428,12 @@ TEST_F(QuicTimeWaitListManagerTest, GetQuicVersionFromMap) {
EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(kConnectionId1));
EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(kConnectionId2));
EXPECT_CALL(visitor_, OnConnectionAddedToTimeWaitList(kConnectionId3));
- AddConnectionId(kConnectionId1, QuicVersionMin(), nullptr);
- AddConnectionId(kConnectionId2, QuicVersionMax(), nullptr);
- AddConnectionId(kConnectionId3, QuicVersionMax(), nullptr);
+ AddConnectionId(kConnectionId1, QuicVersionMin(),
+ /*connection_rejected_statelessly=*/false, nullptr);
+ AddConnectionId(kConnectionId2, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/false, nullptr);
+ AddConnectionId(kConnectionId3, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/false, nullptr);
EXPECT_EQ(QuicVersionMin(),
QuicTimeWaitListManagerPeer::GetQuicVersionFromConnectionId(
@@ -428,11 +453,10 @@ TEST_F(QuicTimeWaitListManagerTest, AddConnectionIdTwice) {
AddConnectionId(connection_id_);
EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_));
const size_t kConnectionCloseLength = 100;
- AddConnectionId(
- connection_id_,
- QuicVersionMax(),
- new QuicEncryptedPacket(
- new char[kConnectionCloseLength], kConnectionCloseLength, true));
+ AddConnectionId(connection_id_, QuicVersionMax(),
+ /*connection_rejected_statelessly=*/false,
+ new QuicEncryptedPacket(new char[kConnectionCloseLength],
+ kConnectionCloseLength, true));
EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_));
EXPECT_EQ(1u, time_wait_list_manager_.num_connections());
« no previous file with comments | « net/tools/quic/quic_time_wait_list_manager.cc ('k') | net/tools/quic/test_tools/packet_dropping_test_writer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698