Index: webrtc/pc/peerconnectioninterface_unittest.cc |
diff --git a/webrtc/pc/peerconnectioninterface_unittest.cc b/webrtc/pc/peerconnectioninterface_unittest.cc |
index fcde2a78699cc72858162695fd68fe94665e0dab..38c97569d2887acb6e58522d3fe7601f06ec6eb1 100644 |
--- a/webrtc/pc/peerconnectioninterface_unittest.cc |
+++ b/webrtc/pc/peerconnectioninterface_unittest.cc |
@@ -3312,6 +3312,68 @@ TEST_F(PeerConnectionInterfaceTest, |
EXPECT_TRUE(DoSetLocalDescription(answer.release())); |
} |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateWithoutMinSucceeds) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.current_bitrate_bps = rtc::Optional<int>(100000); |
+ EXPECT_TRUE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateNegativeMinFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.min_bitrate_bps = rtc::Optional<int>(-1); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateCurrentLessThanMinFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.min_bitrate_bps = rtc::Optional<int>(5); |
+ bitrate.current_bitrate_bps = rtc::Optional<int>(3); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateCurrentNegativeFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.current_bitrate_bps = rtc::Optional<int>(-1); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateMaxLessThanCurrentFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.current_bitrate_bps = rtc::Optional<int>(10); |
+ bitrate.max_bitrate_bps = rtc::Optional<int>(8); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateMaxLessThanMinFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.min_bitrate_bps = rtc::Optional<int>(10); |
+ bitrate.max_bitrate_bps = rtc::Optional<int>(8); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateMaxNegativeFails) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.max_bitrate_bps = rtc::Optional<int>(-1); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
+// TODO(zstein): Test PeerConnectionInterface::SetBitrate's interaction with |
+// Call::SetBitrateConfig |
+ |
+TEST_F(PeerConnectionInterfaceTest, SetBitrateCurrentLessThanSdpMin) { |
+ CreatePeerConnection(); |
+ PeerConnectionInterface::BitrateParameters bitrate; |
+ bitrate.current_bitrate_bps = rtc::Optional<int>(1); |
+ EXPECT_FALSE(pc_->SetBitrate(bitrate).ok()); |
+} |
+ |
class PeerConnectionMediaConfigTest : public testing::Test { |
protected: |
void SetUp() override { |