MOCK_METHOD0(CreateAckFrame, QuicAckFrame*());
MOCK_METHOD0(CreateFeedbackFrame, QuicCongestionFeedbackFrame*());
MOCK_METHOD0(CreateStopWaitingFrame, QuicStopWaitingFrame*());
- MOCK_METHOD1(OnSerializedPacket, bool(const SerializedPacket& packet));
+ MOCK_METHOD1(OnSerializedPacket, void(const SerializedPacket& packet));
MOCK_METHOD2(CloseConnection, void(QuicErrorCode, bool));
void SetCanWriteAnything() {
delegate_.SetCanWriteOnlyNonRetransmittable();
EXPECT_CALL(delegate_, CreateAckFrame()).WillOnce(Return(CreateAckFrame()));
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.SetShouldSendAck(false, false);
EXPECT_FALSE(generator_.HasQueuedFrames());
EXPECT_CALL(delegate_, CreateStopWaitingFrame()).WillOnce(
Return(CreateStopWaitingFrame()));
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.SetShouldSendAck(true, true);
EXPECT_FALSE(generator_.HasQueuedFrames());
generator_.FinishBatchOperations();
EXPECT_TRUE(generator_.HasQueuedFrames());
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.FlushAllQueuedFrames();
EXPECT_FALSE(generator_.HasQueuedFrames());
TEST_F(QuicPacketGeneratorTest, AddControlFrame_WritableAndShouldFlush) {
delegate_.SetCanWriteAnything();
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.AddControlFrame(QuicFrame(CreateRstStreamFrame()));
EXPECT_FALSE(generator_.HasQueuedFrames());
TEST_F(QuicPacketGeneratorTest, ConsumeData_WritableAndShouldFlush) {
delegate_.SetCanWriteAnything();
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
QuicConsumedData consumed = generator_.ConsumeData(
kHeadersStreamId, MakeIOVector("foo"), 2, true, MAY_FEC_PROTECT, NULL);
EXPECT_EQ(3u, consumed.bytes_consumed);
EXPECT_TRUE(generator_.HasQueuedFrames());
// Now both frames will be flushed out.
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.FinishBatchOperations();
EXPECT_FALSE(generator_.HasQueuedFrames());
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet4_), Return(true)));
+ SaveArg<0>(&packet4_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet5_), Return(true)));
+ SaveArg<0>(&packet5_));
}
// Send enough data to create 3 packets: two full and one partial. Send
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
}
// Send enough data to create 2 packets: one full and one partial. Send
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
}
generator_.StartBatchOperations();
// Queue enough data to prevent a stream frame with a non-zero offset from
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
}
size_t data_len = 3 * kDefaultMaxPacketSize + 1;
QuicConsumedData consumed = generator_.ConsumeData(
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet4_), Return(true)));
+ SaveArg<0>(&packet4_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet5_), Return(true)));
+ SaveArg<0>(&packet5_));
}
consumed = generator_.ConsumeData(7, CreateData(kDefaultMaxPacketSize), 0,
true, MAY_FEC_PROTECT, NULL);
// Send one unprotected data packet.
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
QuicConsumedData consumed =
generator_.ConsumeData(5, CreateData(1u), 0, true, MAY_FEC_PROTECT,
NULL);
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet4_), Return(true)));
+ SaveArg<0>(&packet4_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet5_), Return(true)));
+ SaveArg<0>(&packet5_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet6_), Return(true)));
+ SaveArg<0>(&packet6_));
}
// Send enough data to create 3 packets with MUST_FEC_PROTECT flag.
size_t data_len = 2 * kDefaultMaxPacketSize + 100;
// Send one unprotected data packet.
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet7_), Return(true)));
+ SaveArg<0>(&packet7_));
consumed = generator_.ConsumeData(7, CreateData(1u), 0, true,
MAY_FEC_PROTECT, NULL);
EXPECT_EQ(1u, consumed.bytes_consumed);
// Queue protected data for sending. Should cause queued frames to be flushed.
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
EXPECT_FALSE(creator_->IsFecProtected());
consumed = generator_.ConsumeData(7, CreateData(1u), 0, true,
MUST_FEC_PROTECT, NULL);
// Queue protected data for sending. Should cause queued frames to be flushed.
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
QuicConsumedData consumed = generator_.ConsumeData(7, CreateData(1u), 0, true,
MUST_FEC_PROTECT, NULL);
EXPECT_EQ(1u, consumed.bytes_consumed);
// Add enough unprotected data to exceed size of current packet, so that
// current packet is sent. Both frames will be sent out in a single packet.
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
size_t data_len = kDefaultMaxPacketSize;
consumed = generator_.ConsumeData(5, CreateData(data_len), 0, true,
MAY_FEC_PROTECT, NULL);
generator_.StartBatchOperations();
// Send first packet, FEC protected.
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
// Write enough data to cause a packet to be emitted.
size_t data_len = kDefaultMaxPacketSize;
QuicConsumedData consumed = generator_.ConsumeData(
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
}
consumed = generator_.ConsumeData(5, CreateData(data_len), 0, true,
MAY_FEC_PROTECT, NULL);
// Add more unprotected data causing first packet to be sent, FEC protected.
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ SaveArg<0>(&packet_));
size_t data_len = kDefaultMaxPacketSize;
consumed = generator_.ConsumeData(5, CreateData(data_len), 0, true,
MAY_FEC_PROTECT, NULL);
{
InSequence dummy;
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ SaveArg<0>(&packet2_));
EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet3_), Return(true)));
+ SaveArg<0>(&packet3_));
}
consumed = generator_.ConsumeData(5, CreateData(data_len), 0, true,
MUST_FEC_PROTECT, NULL);
generator_.AddControlFrame(QuicFrame(CreateGoAwayFrame()));
// All five frames will be flushed out in a single packet.
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(SaveArg<0>(&packet_));
generator_.FinishBatchOperations();
EXPECT_FALSE(generator_.HasQueuedFrames());
{
InSequence dummy;
- // All five frames will be flushed out in a single packet
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet_), Return(true)));
- EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
- DoAll(SaveArg<0>(&packet2_), Return(true)));
+ // All five frames will be flushed out in a single packet
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
+ SaveArg<0>(&packet_));
+ EXPECT_CALL(delegate_, OnSerializedPacket(_)).WillOnce(
+ SaveArg<0>(&packet2_));
}
// Send enough data to exceed one packet