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 22fd8ef4d0615f961f754b910fc084c0ea63b3c8..a5db2d9488cf8e9786a05aab137cb261de0e486c 100644 |
--- a/net/tools/quic/quic_time_wait_list_manager_test.cc |
+++ b/net/tools/quic/quic_time_wait_list_manager_test.cc |
@@ -35,10 +35,6 @@ namespace test { |
class QuicTimeWaitListManagerPeer { |
public: |
- static QuicVersion version(QuicTimeWaitListManager* manager) { |
- return manager->framer_.version(); |
- } |
- |
static bool is_write_blocked(QuicTimeWaitListManager* manager) { |
return manager->is_write_blocked_; |
} |
@@ -99,11 +95,11 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
return time_wait_list_manager_.IsGuidInTimeWait(guid); |
} |
- void ProcessPacket(QuicGuid guid, const QuicEncryptedPacket& packet) { |
+ void ProcessPacket(QuicGuid guid, QuicPacketSequenceNumber sequence_number) { |
time_wait_list_manager_.ProcessPacket(server_address_, |
client_address_, |
guid, |
- packet); |
+ sequence_number); |
} |
QuicEncryptedPacket* ConstructEncryptedPacket( |
@@ -137,7 +133,7 @@ class QuicTimeWaitListManagerTest : public testing::Test { |
} |
MockFakeTimeEpollServer epoll_server_; |
- MockPacketWriter writer_; |
+ testing::StrictMock<MockPacketWriter> writer_; |
QuicTimeWaitListManager time_wait_list_manager_; |
QuicFramer framer_; |
QuicGuid guid_; |
@@ -200,84 +196,37 @@ TEST_F(QuicTimeWaitListManagerTest, SendConnectionClose) { |
new QuicEncryptedPacket( |
new char[kConnectionCloseLength], kConnectionCloseLength, true)); |
const int kRandomSequenceNumber = 1; |
- scoped_ptr<QuicEncryptedPacket> packet( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid_, kRandomSequenceNumber)); |
EXPECT_CALL(writer_, WritePacket(_, kConnectionCloseLength, |
server_address_.address(), |
client_address_, |
&time_wait_list_manager_)) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 1))); |
- ProcessPacket(guid_, *packet); |
+ ProcessPacket(guid_, kRandomSequenceNumber); |
} |
TEST_F(QuicTimeWaitListManagerTest, SendPublicReset) { |
AddGuid(guid_); |
const int kRandomSequenceNumber = 1; |
- scoped_ptr<QuicEncryptedPacket> packet( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid_, kRandomSequenceNumber)); |
- EXPECT_CALL(writer_, WritePacket(_, _, |
- server_address_.address(), |
- client_address_, |
- &time_wait_list_manager_)) |
- .With(Args<0, 1>(PublicResetPacketEq(guid_, |
- kRandomSequenceNumber))) |
- .WillOnce(Return(WriteResult(WRITE_STATUS_OK, packet->length()))); |
- |
- ProcessPacket(guid_, *packet); |
-} |
- |
-TEST_F(QuicTimeWaitListManagerTest, SendPublicResetUndecryptable) { |
- AddGuid(guid_); |
- const int kRandomSequenceNumber = 1; |
- scoped_ptr<QuicEncryptedPacket> packet( |
- ConstructEncryptedPacket( |
- ENCRYPTION_INITIAL, guid_, kRandomSequenceNumber)); |
EXPECT_CALL(writer_, WritePacket(_, _, |
server_address_.address(), |
client_address_, |
&time_wait_list_manager_)) |
.With(Args<0, 1>(PublicResetPacketEq(guid_, |
kRandomSequenceNumber))) |
- .WillOnce(Return(WriteResult(WRITE_STATUS_OK, packet->length()))); |
- |
- ProcessPacket(guid_, *packet); |
-} |
- |
-TEST_F(QuicTimeWaitListManagerTest, DropInvalidPacket) { |
- AddGuid(guid_); |
- const char buffer[] = "invalid"; |
- QuicEncryptedPacket packet(buffer, arraysize(buffer)); |
- // Will get called for a valid packet since received packet count = 1 (2 ^ 0). |
- EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)).Times(0); |
- ProcessPacket(guid_, packet); |
-} |
+ .WillOnce(Return(WriteResult(WRITE_STATUS_OK, 0))); |
-TEST_F(QuicTimeWaitListManagerTest, DropPublicResetPacket) { |
- AddGuid(guid_); |
- QuicPublicResetPacket packet; |
- packet.public_header.guid = guid_; |
- packet.public_header.version_flag = false; |
- packet.public_header.reset_flag = true; |
- packet.rejected_sequence_number = 239191; |
- packet.nonce_proof = 1010101; |
- scoped_ptr<QuicEncryptedPacket> public_reset_packet( |
- QuicFramer::BuildPublicResetPacket(packet)); |
- // Will get called for a data packet since received packet count = 1 (2 ^ 0). |
- EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)).Times(0); |
- ProcessPacket(guid_, *public_reset_packet); |
+ ProcessPacket(guid_, kRandomSequenceNumber); |
} |
TEST_F(QuicTimeWaitListManagerTest, SendPublicResetWithExponentialBackOff) { |
AddGuid(guid_); |
for (int sequence_number = 1; sequence_number < 101; ++sequence_number) { |
- scoped_ptr<QuicEncryptedPacket> packet( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid_, sequence_number)); |
if ((sequence_number & (sequence_number - 1)) == 0) { |
EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, 1))); |
} |
- ProcessPacket(guid_, *packet); |
+ ProcessPacket(guid_, sequence_number); |
// Send public reset with exponential back off. |
if ((sequence_number & (sequence_number - 1)) == 0) { |
EXPECT_TRUE(QuicTimeWaitListManagerPeer::ShouldSendResponse( |
@@ -337,7 +286,7 @@ TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
.With(Args<0, 1>(PublicResetPacketEq(guid, |
sequence_number))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_OK, packet->length()))); |
- ProcessPacket(guid, *packet); |
+ ProcessPacket(guid, sequence_number); |
EXPECT_FALSE( |
QuicTimeWaitListManagerPeer::is_write_blocked(&time_wait_list_manager_)); |
@@ -349,9 +298,9 @@ TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
.With(Args<0, 1>(PublicResetPacketEq(guid, |
sequence_number))) |
.WillOnce(Return(WriteResult(WRITE_STATUS_BLOCKED, EAGAIN))); |
- ProcessPacket(guid, *packet); |
+ ProcessPacket(guid, sequence_number); |
// 3rd packet. No public reset should be sent; |
- ProcessPacket(guid, *packet); |
+ ProcessPacket(guid, sequence_number); |
EXPECT_TRUE( |
QuicTimeWaitListManagerPeer::is_write_blocked(&time_wait_list_manager_)); |
@@ -365,7 +314,7 @@ TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
ENCRYPTION_NONE, other_guid, other_sequence_number)); |
EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)) |
.Times(0); |
- ProcessPacket(other_guid, *other_packet); |
+ ProcessPacket(other_guid, other_sequence_number); |
// Now expect all the write blocked public reset packets to be sent again. |
EXPECT_CALL(writer_, WritePacket(_, _, |
@@ -388,38 +337,6 @@ TEST_F(QuicTimeWaitListManagerTest, SendQueuedPackets) { |
QuicTimeWaitListManagerPeer::is_write_blocked(&time_wait_list_manager_)); |
} |
-TEST_F(QuicTimeWaitListManagerTest, MakeSureFramerUsesCorrectVersion) { |
- const int kRandomSequenceNumber = 1; |
- scoped_ptr<QuicEncryptedPacket> packet; |
- |
- AddGuid(guid_, net::test::QuicVersionMin(), NULL); |
- framer_.set_version(net::test::QuicVersionMin()); |
- packet.reset( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid_, kRandomSequenceNumber)); |
- |
- // Reset packet should be written, using the minimum quic version. |
- EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)).Times(1) |
- .WillOnce(Return(WriteResult(WRITE_STATUS_OK, 0))); |
- ProcessPacket(guid_, *packet); |
- EXPECT_EQ(QuicTimeWaitListManagerPeer::version(&time_wait_list_manager_), |
- net::test::QuicVersionMin()); |
- |
- // New guid |
- ++guid_; |
- |
- AddGuid(guid_, net::test::QuicVersionMax(), NULL); |
- framer_.set_version(net::test::QuicVersionMax()); |
- packet.reset( |
- ConstructEncryptedPacket(ENCRYPTION_NONE, guid_, kRandomSequenceNumber)); |
- |
- // Reset packet should be written, using the maximum quic version. |
- EXPECT_CALL(writer_, WritePacket(_, _, _, _, _)).Times(1) |
- .WillOnce(Return(WriteResult(WRITE_STATUS_OK, 0))); |
- ProcessPacket(guid_, *packet); |
- EXPECT_EQ(QuicTimeWaitListManagerPeer::version(&time_wait_list_manager_), |
- net::test::QuicVersionMax()); |
-} |
- |
TEST_F(QuicTimeWaitListManagerTest, GetQuicVersionFromMap) { |
const int kGuid1 = 123; |
const int kGuid2 = 456; |