| Index: webrtc/modules/pacing/bitrate_prober_unittest.cc
|
| diff --git a/webrtc/modules/pacing/bitrate_prober_unittest.cc b/webrtc/modules/pacing/bitrate_prober_unittest.cc
|
| index c966f5cfa8deefb9abed4f977d4c91d0a400d47b..074964a0622d9f44ed284a2b9d3cbaea158d4b4d 100644
|
| --- a/webrtc/modules/pacing/bitrate_prober_unittest.cc
|
| +++ b/webrtc/modules/pacing/bitrate_prober_unittest.cc
|
| @@ -27,6 +27,7 @@ TEST(BitrateProberTest, VerifyStatesAndTimeBetweenProbes) {
|
| prober.MaybeInitializeProbe(300000);
|
| EXPECT_TRUE(prober.IsProbing());
|
|
|
| + // First packet should probe as soon as possible.
|
| EXPECT_EQ(0, prober.TimeUntilNextProbe(now_ms));
|
| prober.PacketSent(now_ms, 1000);
|
|
|
| @@ -48,4 +49,28 @@ TEST(BitrateProberTest, VerifyStatesAndTimeBetweenProbes) {
|
| EXPECT_EQ(-1, prober.TimeUntilNextProbe(now_ms));
|
| EXPECT_FALSE(prober.IsProbing());
|
| }
|
| +
|
| +TEST(BitrateProberTest, DoesntProbeWithoutRecentPackets) {
|
| + BitrateProber prober;
|
| + EXPECT_FALSE(prober.IsProbing());
|
| + int64_t now_ms = 0;
|
| + EXPECT_EQ(-1, prober.TimeUntilNextProbe(now_ms));
|
| +
|
| + prober.SetEnabled(true);
|
| + EXPECT_FALSE(prober.IsProbing());
|
| +
|
| + prober.MaybeInitializeProbe(300000);
|
| + EXPECT_TRUE(prober.IsProbing());
|
| + EXPECT_EQ(0, prober.TimeUntilNextProbe(now_ms));
|
| + // Let time pass, no large enough packets put into prober.
|
| + now_ms += 6000;
|
| + EXPECT_EQ(-1, prober.TimeUntilNextProbe(now_ms));
|
| + // Insert a small packet, not a candidate for probing.
|
| + prober.PacketSent(now_ms, 100);
|
| + EXPECT_EQ(-1, prober.TimeUntilNextProbe(now_ms));
|
| + // Insert a large-enough packet.
|
| + prober.PacketSent(now_ms, 1000);
|
| + EXPECT_EQ(8, prober.TimeUntilNextProbe(now_ms));
|
| +}
|
| +
|
| } // namespace webrtc
|
|
|