Index: webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy_unittest.cc |
diff --git a/webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy_unittest.cc b/webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy_unittest.cc |
index 9821568260c0cf82e0df7c97821409f162271246..56001d266e924865354c9714cdafe86e16c4f932 100644 |
--- a/webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy_unittest.cc |
+++ b/webrtc/modules/remote_bitrate_estimator/remote_estimator_proxy_unittest.cc |
@@ -42,7 +42,7 @@ class RemoteEstimatorProxyTest : public ::testing::Test { |
void Process() { |
clock_.AdvanceTimeMilliseconds( |
- RemoteEstimatorProxy::kDefaultProcessIntervalMs); |
+ RemoteEstimatorProxy::kDefaultSendIntervalMs); |
proxy_.Process(); |
} |
@@ -350,4 +350,35 @@ TEST_F(RemoteEstimatorProxyTest, RemovesTimestampsOutOfScope) { |
Process(); |
} |
+TEST_F(RemoteEstimatorProxyTest, TimeUntilNextProcessIsZeroBeforeFirstProcess) { |
+ EXPECT_EQ(0, proxy_.TimeUntilNextProcess()); |
+} |
+ |
+TEST_F(RemoteEstimatorProxyTest, TimeUntilNextProcessIsDefaultOnUnkownBitrate) { |
+ Process(); |
+ EXPECT_EQ(RemoteEstimatorProxy::kDefaultSendIntervalMs, |
+ proxy_.TimeUntilNextProcess()); |
+} |
+ |
+TEST_F(RemoteEstimatorProxyTest, TimeUntilNextProcessIsMinIntervalOn300kbps) { |
+ Process(); |
+ proxy_.OnBitrateChanged(300000); |
+ EXPECT_EQ(RemoteEstimatorProxy::kMinSendIntervalMs, |
+ proxy_.TimeUntilNextProcess()); |
+} |
+ |
+TEST_F(RemoteEstimatorProxyTest, TimeUntilNextProcessIsMaxIntervalOn20kbps) { |
+ Process(); |
+ proxy_.OnBitrateChanged(20000); |
+ EXPECT_EQ(RemoteEstimatorProxy::kMaxSendIntervalMs, |
+ proxy_.TimeUntilNextProcess()); |
+} |
+ |
+TEST_F(RemoteEstimatorProxyTest, TwccReportsUse5PercentOfAvailableBandwidth) { |
+ Process(); |
+ proxy_.OnBitrateChanged(80000); |
+ // 80kbps * 0.05 = TwccReportSize(68B * 8b/B) * 1000ms / SendInterval(136ms) |
+ EXPECT_EQ(136, proxy_.TimeUntilNextProcess()); |
+} |
+ |
} // namespace webrtc |