Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(253)

Unified Diff: webrtc/modules/pacing/paced_sender_unittest.cc

Issue 1932683002: Remove ViEEncoder::SetNetworkStatus (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@move_pacer
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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 3ef45a4199ff341bea63f8d953ae1046fbc917b7..45c53ed3b074f4dbf357b80ad71bc4537e58c966 100644
--- a/webrtc/modules/pacing/paced_sender_unittest.cc
+++ b/webrtc/modules/pacing/paced_sender_unittest.cc
@@ -861,5 +861,43 @@ TEST_F(PacedSenderTest, AverageQueueTime) {
EXPECT_EQ(0, send_bucket_->AverageQueueTimeMs());
}
+TEST_F(PacedSenderTest, CanSendMorePackets) {
+ uint32_t ssrc = 12346;
+ uint16_t sequence_number = 1234;
+ EXPECT_TRUE(send_bucket_->CanSendMorePackets());
+ send_bucket_->Pause();
+ EXPECT_FALSE(send_bucket_->CanSendMorePackets());
+ send_bucket_->Resume();
+ EXPECT_TRUE(send_bucket_->CanSendMorePackets());
+
+ const size_t packets_to_fill_send_queue =
+ kTargetBitrateBps * PacedSender::kDefaultPaceMultiplier *
+ PacedSender::kMaxQueueLengthMs / (8 * 1000 * 1000);
+
+ const size_t packets_to_send_per_interval =
+ kTargetBitrateBps * PacedSender::kDefaultPaceMultiplier /
+ (8 * 1000 * 200) +
+ 1; // One more than expected due to rounding.
+ // Packets send during one interval.
+ for (size_t i = 0; i < packets_to_send_per_interval; ++i) {
+ SendAndExpectPacket(PacedSender::kNormalPriority, ssrc, sequence_number++,
+ clock_.TimeInMilliseconds(), 1000, false);
+ }
+
+ for (size_t i = 0;
+ i < packets_to_fill_send_queue - packets_to_send_per_interval - 1; ++i) {
+ send_bucket_->InsertPacket(PacedSender::kNormalPriority, ssrc,
+ sequence_number++, clock_.TimeInMilliseconds(),
+ 1000, false);
+ }
+ EXPECT_TRUE(send_bucket_->CanSendMorePackets());
+ send_bucket_->InsertPacket(PacedSender::kNormalPriority, ssrc,
+ sequence_number++, clock_.TimeInMilliseconds(),
+ 1000, false);
+ EXPECT_FALSE(send_bucket_->CanSendMorePackets());
+ send_bucket_->Process();
+ EXPECT_TRUE(send_bucket_->CanSendMorePackets());
+}
+
} // namespace test
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698