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

Unified Diff: webrtc/call/bitrate_allocator_unittest.cc

Issue 1972183004: Reland "Remove ViEEncoder::SetNetworkStatus" (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 7 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/call/bitrate_allocator_unittest.cc
diff --git a/webrtc/call/bitrate_allocator_unittest.cc b/webrtc/call/bitrate_allocator_unittest.cc
index 253d3fb3df54cda2e5491633090479218cc306d4..98ebc0962066e4d6ae4e6875fd63ed127944b5d4 100644
--- a/webrtc/call/bitrate_allocator_unittest.cc
+++ b/webrtc/call/bitrate_allocator_unittest.cc
@@ -222,4 +222,32 @@ TEST_F(BitrateAllocatorTest, ThreeBitrateObserversLowRembEnforceMin) {
allocator_->RemoveObserver(&bitrate_observer_2);
allocator_->RemoveObserver(&bitrate_observer_3);
}
+
+TEST_F(BitrateAllocatorTest, AddObserverWhileNetworkDown) {
+ TestBitrateObserver bitrate_observer_1;
+ int start_bitrate =
+ allocator_->AddObserver(&bitrate_observer_1, 100000, 400000, true);
+ EXPECT_EQ(300000, start_bitrate);
+
+ // Set network down, ie, no available bitrate.
+ allocator_->OnNetworkChanged(0, 0, 0);
+
+ EXPECT_EQ(0u, bitrate_observer_1.last_bitrate_);
+
+ TestBitrateObserver bitrate_observer_2;
+ start_bitrate =
+ allocator_->AddObserver(&bitrate_observer_2, 200000, 400000, true);
+
+ // Expect the start_bitrate to be set as if the network was still up but that
+ // the new observer have been notified that that the network is down.
+ EXPECT_EQ(200000, start_bitrate);
+ EXPECT_EQ(0u, bitrate_observer_1.last_bitrate_);
+ EXPECT_EQ(0u, bitrate_observer_2.last_bitrate_);
+
+ // Set network is back up.
+ allocator_->OnNetworkChanged(1500000, 0, 50);
+ EXPECT_EQ(700000u, bitrate_observer_1.last_bitrate_);
+ EXPECT_EQ(800000u, bitrate_observer_2.last_bitrate_);
+}
+
} // namespace webrtc

Powered by Google App Engine
This is Rietveld 408576698