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 9aac8b36bf0f5f3b85274d02a5cb1d76c21c4c40..8d440f9cb4c284b3b97251d7ecd2d2ec696b2601 100644 |
--- a/net/tools/quic/quic_time_wait_list_manager_test.cc |
+++ b/net/tools/quic/quic_time_wait_list_manager_test.cc |
@@ -50,9 +50,10 @@ class QuicTimeWaitListManagerPeer { |
return manager->kTimeWaitPeriod_; |
} |
- static QuicVersion GetQuicVersionFromGuid(QuicTimeWaitListManager* manager, |
- QuicGuid guid) { |
- return manager->GetQuicVersionFromGuid(guid); |
+ static QuicVersion GetQuicVersionFromConnectionId( |
+ QuicTimeWaitListManager* manager, |
+ QuicConnectionId connection_id) { |
+ return manager->GetQuicVersionFromConnectionId(connection_id); |
} |
}; |
@@ -70,7 +71,7 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
: time_wait_list_manager_(&writer_, &visitor_, |
&epoll_server_, QuicSupportedVersions()), |
framer_(QuicSupportedVersions(), QuicTime::Zero(), true), |
- guid_(45), |
+ connection_id_(45), |
client_address_(net::test::TestPeerIPAddress(), kTestPort), |
writer_is_blocked_(false) {} |
@@ -83,34 +84,36 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
.WillRepeatedly(Return(false)); |
} |
- void AddGuid(QuicGuid guid) { |
- AddGuid(guid, net::test::QuicVersionMax(), NULL); |
+ void AddConnectionId(QuicConnectionId connection_id) { |
+ AddConnectionId(connection_id, net::test::QuicVersionMax(), NULL); |
} |
- void AddGuid(QuicGuid guid, |
- QuicVersion version, |
- QuicEncryptedPacket* packet) { |
- time_wait_list_manager_.AddGuidToTimeWait(guid, version, packet); |
+ void AddConnectionId(QuicConnectionId connection_id, |
+ QuicVersion version, |
+ QuicEncryptedPacket* packet) { |
+ time_wait_list_manager_.AddConnectionIdToTimeWait( |
+ connection_id, version, packet); |
} |
- bool IsGuidInTimeWait(QuicGuid guid) { |
- return time_wait_list_manager_.IsGuidInTimeWait(guid); |
+ bool IsConnectionIdInTimeWait(QuicConnectionId connection_id) { |
+ return time_wait_list_manager_.IsConnectionIdInTimeWait(connection_id); |
} |
- void ProcessPacket(QuicGuid guid, QuicPacketSequenceNumber sequence_number) { |
+ void ProcessPacket(QuicConnectionId connection_id, |
+ QuicPacketSequenceNumber sequence_number) { |
time_wait_list_manager_.ProcessPacket(server_address_, |
client_address_, |
- guid, |
+ connection_id, |
sequence_number); |
} |
QuicEncryptedPacket* ConstructEncryptedPacket( |
EncryptionLevel level, |
- QuicGuid guid, |
+ QuicConnectionId connection_id, |
QuicPacketSequenceNumber sequence_number) { |
QuicPacketHeader header; |
- header.public_header.guid = guid; |
- header.public_header.guid_length = PACKET_8BYTE_GUID; |
+ header.public_header.connection_id = connection_id; |
+ header.public_header.connection_id_length = PACKET_8BYTE_CONNECTION_ID; |
header.public_header.version_flag = false; |
header.public_header.reset_flag = false; |
header.public_header.sequence_number_length = PACKET_6BYTE_SEQUENCE_NUMBER; |
@@ -139,7 +142,7 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
StrictMock<MockQuicServerSessionVisitor> visitor_; |
QuicTimeWaitListManager time_wait_list_manager_; |
QuicFramer framer_; |
- QuicGuid guid_; |
+ QuicConnectionId connection_id_; |
IPEndPoint server_address_; |
IPEndPoint client_address_; |
bool writer_is_blocked_; |
@@ -148,9 +151,9 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
class ValidatePublicResetPacketPredicate |
: public MatcherInterface<const std::tr1::tuple<const char*, int> > { |
public: |
- explicit ValidatePublicResetPacketPredicate(QuicGuid guid, |
+ explicit ValidatePublicResetPacketPredicate(QuicConnectionId connection_id, |
QuicPacketSequenceNumber number) |
- : guid_(guid), sequence_number_(number) { |
+ : connection_id_(connection_id), sequence_number_(number) { |
} |
virtual bool MatchAndExplain( |
@@ -165,7 +168,7 @@ class ValidatePublicResetPacketPredicate |
std::tr1::get<1>(packet_buffer)); |
framer.ProcessPacket(encrypted); |
QuicPublicResetPacket packet = visitor.public_reset_packet(); |
- return guid_ == packet.public_header.guid && |
+ return connection_id_ == packet.public_header.connection_id && |
packet.public_header.reset_flag && !packet.public_header.version_flag && |
sequence_number_ == packet.rejected_sequence_number && |
net::test::TestPeerIPAddress() == packet.client_address.address() && |
@@ -177,60 +180,61 @@ class ValidatePublicResetPacketPredicate |
virtual void DescribeNegationTo(::std::ostream* os) const { } |
private: |
- QuicGuid guid_; |
+ QuicConnectionId connection_id_; |
QuicPacketSequenceNumber sequence_number_; |
}; |
Matcher<const std::tr1::tuple<const char*, int> > PublicResetPacketEq( |
- QuicGuid guid, |
+ QuicConnectionId connection_id, |
QuicPacketSequenceNumber sequence_number) { |
- return MakeMatcher(new ValidatePublicResetPacketPredicate(guid, |
+ return MakeMatcher(new ValidatePublicResetPacketPredicate(connection_id, |
sequence_number)); |
} |
-TEST_F(QuicTimeWaitListManagerTest, CheckGuidInTimeWait) { |
- EXPECT_FALSE(IsGuidInTimeWait(guid_)); |
- AddGuid(guid_); |
- EXPECT_TRUE(IsGuidInTimeWait(guid_)); |
+TEST_F(QuicTimeWaitListManagerTest, CheckConnectionIdInTimeWait) { |
+ EXPECT_FALSE(IsConnectionIdInTimeWait(connection_id_)); |
+ AddConnectionId(connection_id_); |
+ EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_)); |
} |
TEST_F(QuicTimeWaitListManagerTest, SendConnectionClose) { |
size_t kConnectionCloseLength = 100; |
- AddGuid(guid_, |
- net::test::QuicVersionMax(), |
- new QuicEncryptedPacket( |
- new char[kConnectionCloseLength], kConnectionCloseLength, true)); |
+ AddConnectionId( |
+ connection_id_, |
+ net::test::QuicVersionMax(), |
+ new QuicEncryptedPacket( |
+ new char[kConnectionCloseLength], kConnectionCloseLength, true)); |
const int kRandomSequenceNumber = 1; |
EXPECT_CALL(writer_, WritePacket(_, kConnectionCloseLength, |
server_address_.address(), |
client_address_)) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 1))); |
- ProcessPacket(guid_, kRandomSequenceNumber); |
+ ProcessPacket(connection_id_, kRandomSequenceNumber); |
} |
TEST_F(QuicTimeWaitListManagerTest, SendPublicReset) { |
- AddGuid(guid_); |
+ AddConnectionId(connection_id_); |
const int kRandomSequenceNumber = 1; |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_)) |
- .With(Args<0, 1>(PublicResetPacketEq(guid_, |
+ .With(Args<0, 1>(PublicResetPacketEq(connection_id_, |
kRandomSequenceNumber))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 0))); |
- ProcessPacket(guid_, kRandomSequenceNumber); |
+ ProcessPacket(connection_id_, kRandomSequenceNumber); |
} |
TEST_F(QuicTimeWaitListManagerTest, SendPublicResetWithExponentialBackOff) { |
- AddGuid(guid_); |
+ AddConnectionId(connection_id_); |
for (int sequence_number = 1; sequence_number < 101; ++sequence_number) { |
if ((sequence_number & (sequence_number - 1)) == 0) { |
EXPECT_CALL(writer_, WritePacket(_, _, _, _)) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 1))); |
} |
- ProcessPacket(guid_, sequence_number); |
+ ProcessPacket(connection_id_, sequence_number); |
// Send public reset with exponential back off. |
if ((sequence_number & (sequence_number - 1)) == 0) { |
EXPECT_TRUE(QuicTimeWaitListManagerPeer::ShouldSendResponse( |
@@ -242,94 +246,103 @@ TEST_F(QuicTimeWaitListManagerTest, SendPublicResetWithExponentialBackOff) { |
} |
} |
-TEST_F(QuicTimeWaitListManagerTest, CleanUpOldGuids) { |
- const int kGuidCount = 100; |
- const int kOldGuidCount = 31; |
+TEST_F(QuicTimeWaitListManagerTest, CleanUpOldConnectionIds) { |
+ const int kConnectionIdCount = 100; |
+ const int kOldConnectionIdCount = 31; |
- // Add guids such that their expiry time is kTimeWaitPeriod_. |
+ // Add connection_ids such that their expiry time is kTimeWaitPeriod_. |
epoll_server_.set_now_in_usec(0); |
- for (int guid = 1; guid <= kOldGuidCount; ++guid) { |
- AddGuid(guid); |
+ for (int connection_id = 1; |
+ connection_id <= kOldConnectionIdCount; |
+ ++connection_id) { |
+ AddConnectionId(connection_id); |
} |
- // Add remaining guids such that their add time is 2 * kTimeWaitPeriod. |
+ // Add remaining connection_ids such that their add time is |
+ // 2 * kTimeWaitPeriod. |
const QuicTime::Delta time_wait_period = |
QuicTimeWaitListManagerPeer::time_wait_period(&time_wait_list_manager_); |
epoll_server_.set_now_in_usec(time_wait_period.ToMicroseconds()); |
- for (int guid = kOldGuidCount + 1; guid <= kGuidCount; ++guid) { |
- AddGuid(guid); |
+ for (int connection_id = kOldConnectionIdCount + 1; |
+ connection_id <= kConnectionIdCount; |
+ ++connection_id) { |
+ AddConnectionId(connection_id); |
} |
QuicTime::Delta offset = QuicTime::Delta::FromMicroseconds(39); |
// Now set the current time as time_wait_period + offset usecs. |
epoll_server_.set_now_in_usec(time_wait_period.Add(offset).ToMicroseconds()); |
- // After all the old guids are cleaned up, check the next alarm interval. |
+ // After all the old connection_ids are cleaned up, check the next alarm |
+ // interval. |
int64 next_alarm_time = epoll_server_.ApproximateNowInUsec() + |
time_wait_period.Subtract(offset).ToMicroseconds(); |
EXPECT_CALL(epoll_server_, RegisterAlarm(next_alarm_time, _)); |
- time_wait_list_manager_.CleanUpOldGuids(); |
- for (int guid = 1; guid <= kGuidCount; ++guid) { |
- EXPECT_EQ(guid > kOldGuidCount, IsGuidInTimeWait(guid)) |
- << "kOldGuidCount: " << kOldGuidCount |
- << " guid: " << guid; |
+ time_wait_list_manager_.CleanUpOldConnectionIds(); |
+ for (int connection_id = 1; |
+ connection_id <= kConnectionIdCount; |
+ ++connection_id) { |
+ EXPECT_EQ(connection_id > kOldConnectionIdCount, |
+ IsConnectionIdInTimeWait(connection_id)) |
+ << "kOldConnectionIdCount: " << kOldConnectionIdCount |
+ << " connection_id: " << connection_id; |
} |
} |
TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
- QuicGuid guid = 1; |
- AddGuid(guid); |
+ QuicConnectionId connection_id = 1; |
+ AddConnectionId(connection_id); |
QuicPacketSequenceNumber sequence_number = 234; |
- scoped_ptr<QuicEncryptedPacket> packet( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid, sequence_number)); |
+ scoped_ptr<QuicEncryptedPacket> packet(ConstructEncryptedPacket( |
+ ENCRYPTION_NONE, connection_id, sequence_number)); |
// Let first write through. |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_)) |
- .With(Args<0, 1>(PublicResetPacketEq(guid, |
+ .With(Args<0, 1>(PublicResetPacketEq(connection_id, |
sequence_number))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, packet->length()))); |
- ProcessPacket(guid, sequence_number); |
+ ProcessPacket(connection_id, sequence_number); |
// write block for the next packet. |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_)) |
- .With(Args<0, 1>(PublicResetPacketEq(guid, |
+ .With(Args<0, 1>(PublicResetPacketEq(connection_id, |
sequence_number))) |
.WillOnce(DoAll( |
Assign(&writer_is_blocked_, true), |
Return(WriteResult(WRITE_STATUS_BLOCKED, EAGAIN)))); |
EXPECT_CALL(visitor_, OnWriteBlocked(&time_wait_list_manager_)); |
- ProcessPacket(guid, sequence_number); |
+ ProcessPacket(connection_id, sequence_number); |
// 3rd packet. No public reset should be sent; |
- ProcessPacket(guid, sequence_number); |
+ ProcessPacket(connection_id, sequence_number); |
// write packet should not be called since we are write blocked but the |
// should be queued. |
- QuicGuid other_guid = 2; |
- AddGuid(other_guid); |
+ QuicConnectionId other_connection_id = 2; |
+ AddConnectionId(other_connection_id); |
QuicPacketSequenceNumber other_sequence_number = 23423; |
scoped_ptr<QuicEncryptedPacket> other_packet( |
ConstructEncryptedPacket( |
- ENCRYPTION_NONE, other_guid, other_sequence_number)); |
+ ENCRYPTION_NONE, other_connection_id, other_sequence_number)); |
EXPECT_CALL(writer_, WritePacket(_, _, _, _)) |
.Times(0); |
EXPECT_CALL(visitor_, OnWriteBlocked(&time_wait_list_manager_)); |
- ProcessPacket(other_guid, other_sequence_number); |
+ ProcessPacket(other_connection_id, other_sequence_number); |
// Now expect all the write blocked public reset packets to be sent again. |
writer_is_blocked_ = false; |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_)) |
- .With(Args<0, 1>(PublicResetPacketEq(guid, |
+ .With(Args<0, 1>(PublicResetPacketEq(connection_id, |
sequence_number))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, packet->length()))); |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_)) |
- .With(Args<0, 1>(PublicResetPacketEq(other_guid, |
+ .With(Args<0, 1>(PublicResetPacketEq(other_connection_id, |
other_sequence_number))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, |
other_packet->length()))); |
@@ -337,36 +350,37 @@ TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
} |
TEST_F(QuicTimeWaitListManagerTest, GetQuicVersionFromMap) { |
- const int kGuid1 = 123; |
- const int kGuid2 = 456; |
- const int kGuid3 = 789; |
+ const int kConnectionId1 = 123; |
+ const int kConnectionId2 = 456; |
+ const int kConnectionId3 = 789; |
- AddGuid(kGuid1, net::test::QuicVersionMin(), NULL); |
- AddGuid(kGuid2, net::test::QuicVersionMax(), NULL); |
- AddGuid(kGuid3, net::test::QuicVersionMax(), NULL); |
+ AddConnectionId(kConnectionId1, net::test::QuicVersionMin(), NULL); |
+ AddConnectionId(kConnectionId2, net::test::QuicVersionMax(), NULL); |
+ AddConnectionId(kConnectionId3, net::test::QuicVersionMax(), NULL); |
EXPECT_EQ(net::test::QuicVersionMin(), |
- QuicTimeWaitListManagerPeer::GetQuicVersionFromGuid( |
- &time_wait_list_manager_, kGuid1)); |
+ QuicTimeWaitListManagerPeer::GetQuicVersionFromConnectionId( |
+ &time_wait_list_manager_, kConnectionId1)); |
EXPECT_EQ(net::test::QuicVersionMax(), |
- QuicTimeWaitListManagerPeer::GetQuicVersionFromGuid( |
- &time_wait_list_manager_, kGuid2)); |
+ QuicTimeWaitListManagerPeer::GetQuicVersionFromConnectionId( |
+ &time_wait_list_manager_, kConnectionId2)); |
EXPECT_EQ(net::test::QuicVersionMax(), |
- QuicTimeWaitListManagerPeer::GetQuicVersionFromGuid( |
- &time_wait_list_manager_, kGuid3)); |
+ QuicTimeWaitListManagerPeer::GetQuicVersionFromConnectionId( |
+ &time_wait_list_manager_, kConnectionId3)); |
} |
-TEST_F(QuicTimeWaitListManagerTest, AddGuidTwice) { |
- // Add guids such that their expiry time is kTimeWaitPeriod_. |
+TEST_F(QuicTimeWaitListManagerTest, AddConnectionIdTwice) { |
+ // Add connection_ids such that their expiry time is kTimeWaitPeriod_. |
epoll_server_.set_now_in_usec(0); |
- AddGuid(guid_); |
- EXPECT_TRUE(IsGuidInTimeWait(guid_)); |
+ AddConnectionId(connection_id_); |
+ EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_)); |
size_t kConnectionCloseLength = 100; |
- AddGuid(guid_, |
- net::test::QuicVersionMax(), |
- new QuicEncryptedPacket( |
- new char[kConnectionCloseLength], kConnectionCloseLength, true)); |
- EXPECT_TRUE(IsGuidInTimeWait(guid_)); |
+ AddConnectionId( |
+ connection_id_, |
+ net::test::QuicVersionMax(), |
+ new QuicEncryptedPacket( |
+ new char[kConnectionCloseLength], kConnectionCloseLength, true)); |
+ EXPECT_TRUE(IsConnectionIdInTimeWait(connection_id_)); |
EXPECT_CALL(writer_, WritePacket(_, |
kConnectionCloseLength, |
@@ -375,7 +389,7 @@ TEST_F(QuicTimeWaitListManagerTest, AddGuidTwice) { |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 1))); |
const int kRandomSequenceNumber = 1; |
- ProcessPacket(guid_, kRandomSequenceNumber); |
+ ProcessPacket(connection_id_, kRandomSequenceNumber); |
const QuicTime::Delta time_wait_period = |
QuicTimeWaitListManagerPeer::time_wait_period(&time_wait_list_manager_); |
@@ -383,30 +397,30 @@ TEST_F(QuicTimeWaitListManagerTest, AddGuidTwice) { |
QuicTime::Delta offset = QuicTime::Delta::FromMicroseconds(39); |
// Now set the current time as time_wait_period + offset usecs. |
epoll_server_.set_now_in_usec(time_wait_period.Add(offset).ToMicroseconds()); |
- // After the guids are cleaned up, check the next alarm interval. |
+ // After the connection_ids are cleaned up, check the next alarm interval. |
int64 next_alarm_time = epoll_server_.ApproximateNowInUsec() + |
time_wait_period.ToMicroseconds(); |
EXPECT_CALL(epoll_server_, RegisterAlarm(next_alarm_time, _)); |
- time_wait_list_manager_.CleanUpOldGuids(); |
- EXPECT_FALSE(IsGuidInTimeWait(guid_)); |
+ time_wait_list_manager_.CleanUpOldConnectionIds(); |
+ EXPECT_FALSE(IsConnectionIdInTimeWait(connection_id_)); |
} |
-TEST_F(QuicTimeWaitListManagerTest, GuidsOrderedByTime) { |
- // Simple randomization: the values of guids are swapped based on the current |
- // seconds on the clock. If the container is broken, the test will be 50% |
- // flaky. |
+TEST_F(QuicTimeWaitListManagerTest, ConnectionIdsOrderedByTime) { |
+ // Simple randomization: the values of connection_ids are swapped based on the |
+ // current seconds on the clock. If the container is broken, the test will be |
+ // 50% flaky. |
int odd_second = static_cast<int>(epoll_server_.ApproximateNowInUsec()) % 2; |
EXPECT_TRUE(odd_second == 0 || odd_second == 1); |
- const QuicGuid kGuid1 = odd_second; |
- const QuicGuid kGuid2 = 1 - odd_second; |
+ const QuicConnectionId kConnectionId1 = odd_second; |
+ const QuicConnectionId kConnectionId2 = 1 - odd_second; |
// 1 will hash lower than 2, but we add it later. They should come out in the |
// add order, not hash order. |
epoll_server_.set_now_in_usec(0); |
- AddGuid(kGuid1); |
+ AddConnectionId(kConnectionId1); |
epoll_server_.set_now_in_usec(10); |
- AddGuid(kGuid2); |
+ AddConnectionId(kConnectionId2); |
const QuicTime::Delta time_wait_period = |
QuicTimeWaitListManagerPeer::time_wait_period(&time_wait_list_manager_); |
@@ -414,9 +428,9 @@ TEST_F(QuicTimeWaitListManagerTest, GuidsOrderedByTime) { |
EXPECT_CALL(epoll_server_, RegisterAlarm(_, _)); |
- time_wait_list_manager_.CleanUpOldGuids(); |
- EXPECT_FALSE(IsGuidInTimeWait(kGuid1)); |
- EXPECT_TRUE(IsGuidInTimeWait(kGuid2)); |
+ time_wait_list_manager_.CleanUpOldConnectionIds(); |
+ EXPECT_FALSE(IsConnectionIdInTimeWait(kConnectionId1)); |
+ EXPECT_TRUE(IsConnectionIdInTimeWait(kConnectionId2)); |
} |
} // namespace |
} // namespace test |