Index: webrtc/modules/pacing/paced_sender_unittest.cc |
diff --git a/webrtc/modules/pacing/paced_sender_unittest.cc b/webrtc/modules/pacing/paced_sender_unittest.cc |
index 6a0a006c32600f5bfe0489da183d3957d45b9e34..a80d665585e7a102dc84b196fdf363962cfc7819 100644 |
--- a/webrtc/modules/pacing/paced_sender_unittest.cc |
+++ b/webrtc/modules/pacing/paced_sender_unittest.cc |
@@ -357,6 +357,27 @@ TEST_F(PacedSenderTest, Padding) { |
send_bucket_->Process(); |
} |
+TEST_F(PacedSenderTest, NoPaddingBeforeNormalPacket) { |
+ send_bucket_->SetEstimatedBitrate(kTargetBitrateBps); |
+ send_bucket_->SetAllocatedSendBitrate(kTargetBitrateBps, kTargetBitrateBps); |
+ |
+ EXPECT_CALL(callback_, TimeToSendPadding(_)).Times(0); |
+ send_bucket_->Process(); |
+ clock_.AdvanceTimeMilliseconds(send_bucket_->TimeUntilNextProcess()); |
+ |
+ send_bucket_->Process(); |
+ clock_.AdvanceTimeMilliseconds(send_bucket_->TimeUntilNextProcess()); |
+ |
+ uint32_t ssrc = 12345; |
+ uint16_t sequence_number = 1234; |
+ int64_t capture_time_ms = 56789; |
+ |
+ SendAndExpectPacket(PacedSender::kNormalPriority, ssrc, sequence_number++, |
+ capture_time_ms, 250, false); |
+ EXPECT_CALL(callback_, TimeToSendPadding(250)).Times(1).WillOnce(Return(250)); |
+ send_bucket_->Process(); |
+} |
+ |
TEST_F(PacedSenderTest, VerifyPaddingUpToBitrate) { |
uint32_t ssrc = 12345; |
uint16_t sequence_number = 1234; |
@@ -391,7 +412,10 @@ TEST_F(PacedSenderTest, VerifyAverageBitrateVaryingMediaPayload) { |
send_bucket_.reset(new PacedSender(&clock_, &callback)); |
send_bucket_->SetProbingEnabled(false); |
send_bucket_->SetEstimatedBitrate(kTargetBitrateBps); |
- send_bucket_->SetAllocatedSendBitrate(kTargetBitrateBps, kTargetBitrateBps); |
+ |
+ send_bucket_->SetAllocatedSendBitrate( |
+ 0 /*allocated_bitrate_bps*/, |
+ kTargetBitrateBps * 2 /* max_padding_bitrate_bps */); |
int64_t start_time = clock_.TimeInMilliseconds(); |
size_t media_bytes = 0; |