| Index: net/quic/core/congestion_control/pacing_sender_test.cc
|
| diff --git a/net/quic/core/congestion_control/pacing_sender_test.cc b/net/quic/core/congestion_control/pacing_sender_test.cc
|
| index 046c157b73b6168cd7700176dcd12668f6c17ee4..2a6073f9019cd8e46e2961809b63dba8cd566e5d 100644
|
| --- a/net/quic/core/congestion_control/pacing_sender_test.cc
|
| +++ b/net/quic/core/congestion_control/pacing_sender_test.cc
|
| @@ -29,9 +29,8 @@ class PacingSenderTest : public ::testing::Test {
|
| infinite_time_(QuicTime::Delta::Infinite()),
|
| packet_number_(1),
|
| mock_sender_(new StrictMock<MockSendAlgorithm>()),
|
| - pacing_sender_(new PacingSender(mock_sender_,
|
| - QuicTime::Delta::FromMilliseconds(1),
|
| - 0)) {
|
| + pacing_sender_(new PacingSender) {
|
| + pacing_sender_->set_sender(mock_sender_.get());
|
| // Pick arbitrary time.
|
| clock_.AdvanceTime(QuicTime::Delta::FromMilliseconds(9));
|
| }
|
| @@ -39,11 +38,21 @@ class PacingSenderTest : public ::testing::Test {
|
| ~PacingSenderTest() override {}
|
|
|
| void InitPacingRate(QuicPacketCount burst_size, QuicBandwidth bandwidth) {
|
| - pacing_sender_.reset();
|
| - mock_sender_ = new StrictMock<MockSendAlgorithm>();
|
| - pacing_sender_.reset(new PacingSender(
|
| - mock_sender_, QuicTime::Delta::FromMilliseconds(1), burst_size));
|
| + mock_sender_.reset(new StrictMock<MockSendAlgorithm>());
|
| + pacing_sender_.reset(new PacingSender);
|
| + pacing_sender_->set_sender(mock_sender_.get());
|
| EXPECT_CALL(*mock_sender_, PacingRate(_)).WillRepeatedly(Return(bandwidth));
|
| + if (burst_size == 0) {
|
| + EXPECT_CALL(*mock_sender_, OnCongestionEvent(_, _, _, _));
|
| + SendAlgorithmInterface::CongestionVector lost_packets;
|
| + lost_packets.push_back(std::make_pair(1, kMaxPacketSize));
|
| + SendAlgorithmInterface::CongestionVector empty;
|
| + pacing_sender_->OnCongestionEvent(true, 1234, empty, lost_packets);
|
| + } else if (burst_size != kInitialBurstPackets) {
|
| + LOG(FATAL) << "Unsupported burst_size " << burst_size
|
| + << " specificied, only 0 and " << kInitialBurstPackets
|
| + << " are supported.";
|
| + }
|
| }
|
|
|
| void CheckPacketIsSentImmediately(HasRetransmittableData retransmittable_data,
|
| @@ -100,7 +109,7 @@ class PacingSenderTest : public ::testing::Test {
|
| const QuicTime::Delta infinite_time_;
|
| MockClock clock_;
|
| QuicPacketNumber packet_number_;
|
| - StrictMock<MockSendAlgorithm>* mock_sender_;
|
| + std::unique_ptr<StrictMock<MockSendAlgorithm>> mock_sender_;
|
| std::unique_ptr<PacingSender> pacing_sender_;
|
| };
|
|
|
| @@ -336,69 +345,5 @@ TEST_F(PacingSenderTest, NoBurstInRecovery) {
|
| CheckPacketIsDelayed(QuicTime::Delta::FromMilliseconds(2));
|
| }
|
|
|
| -TEST_F(PacingSenderTest, VerifyInnerSenderCalled) {
|
| - QuicBandwidth kBandwidth = QuicBandwidth::FromBitsPerSecond(1000);
|
| - QuicTime kTime = QuicTime::Infinite();
|
| - QuicTime::Delta kTimeDelta = QuicTime::Delta::Infinite();
|
| - QuicByteCount kBytes = 12345u;
|
| -
|
| - EXPECT_CALL(*mock_sender_, SetFromConfig(_, Perspective::IS_SERVER));
|
| - QuicConfig config;
|
| - pacing_sender_->SetFromConfig(config, Perspective::IS_SERVER);
|
| -
|
| - EXPECT_CALL(*mock_sender_, ResumeConnectionState(_, true));
|
| - CachedNetworkParameters cached_network_params;
|
| - pacing_sender_->ResumeConnectionState(cached_network_params, true);
|
| -
|
| - EXPECT_CALL(*mock_sender_, SetNumEmulatedConnections(2));
|
| - pacing_sender_->SetNumEmulatedConnections(2);
|
| -
|
| - SendAlgorithmInterface::CongestionVector packets;
|
| - EXPECT_CALL(*mock_sender_, OnCongestionEvent(true, kBytes, packets, packets));
|
| - pacing_sender_->OnCongestionEvent(true, kBytes, packets, packets);
|
| -
|
| - EXPECT_CALL(*mock_sender_, OnPacketSent(kTime, kBytes, 123u, kBytes,
|
| - HAS_RETRANSMITTABLE_DATA));
|
| - EXPECT_CALL(*mock_sender_, PacingRate(_)).WillOnce(Return(kBandwidth));
|
| - pacing_sender_->OnPacketSent(kTime, kBytes, 123u, kBytes,
|
| - HAS_RETRANSMITTABLE_DATA);
|
| -
|
| - EXPECT_CALL(*mock_sender_, OnRetransmissionTimeout(true));
|
| - pacing_sender_->OnRetransmissionTimeout(true);
|
| -
|
| - EXPECT_CALL(*mock_sender_, OnConnectionMigration());
|
| - pacing_sender_->OnConnectionMigration();
|
| -
|
| - EXPECT_CALL(*mock_sender_, TimeUntilSend(kTime, kBytes))
|
| - .WillOnce(Return(kTimeDelta));
|
| - pacing_sender_->TimeUntilSend(kTime, kBytes);
|
| -
|
| - EXPECT_CALL(*mock_sender_, PacingRate(_)).WillOnce(Return(kBandwidth));
|
| - EXPECT_EQ(kBandwidth, pacing_sender_->PacingRate(0));
|
| -
|
| - EXPECT_CALL(*mock_sender_, BandwidthEstimate()).WillOnce(Return(kBandwidth));
|
| - EXPECT_EQ(kBandwidth, pacing_sender_->BandwidthEstimate());
|
| -
|
| - EXPECT_CALL(*mock_sender_, RetransmissionDelay())
|
| - .WillOnce(Return(kTimeDelta));
|
| - EXPECT_EQ(kTimeDelta, pacing_sender_->RetransmissionDelay());
|
| -
|
| - EXPECT_CALL(*mock_sender_, GetCongestionWindow()).WillOnce(Return(kBytes));
|
| - EXPECT_EQ(kBytes, pacing_sender_->GetCongestionWindow());
|
| -
|
| - EXPECT_CALL(*mock_sender_, InSlowStart()).WillOnce(Return(true));
|
| - EXPECT_TRUE(pacing_sender_->InSlowStart());
|
| -
|
| - EXPECT_CALL(*mock_sender_, InRecovery()).WillOnce(Return(true));
|
| - EXPECT_TRUE(pacing_sender_->InRecovery());
|
| -
|
| - EXPECT_CALL(*mock_sender_, GetSlowStartThreshold()).WillOnce(Return(kBytes));
|
| - EXPECT_EQ(kBytes, pacing_sender_->GetSlowStartThreshold());
|
| -
|
| - EXPECT_CALL(*mock_sender_, GetCongestionControlType())
|
| - .WillOnce(Return(kReno));
|
| - EXPECT_EQ(kReno, pacing_sender_->GetCongestionControlType());
|
| -}
|
| -
|
| } // namespace test
|
| } // namespace net
|
|
|