diff options
Diffstat (limited to 'pc/jitter_buffer_delay_unittest.cc')
-rw-r--r-- | pc/jitter_buffer_delay_unittest.cc | 64 |
1 files changed, 16 insertions, 48 deletions
diff --git a/pc/jitter_buffer_delay_unittest.cc b/pc/jitter_buffer_delay_unittest.cc index 7edd09acd2..b00075ceb5 100644 --- a/pc/jitter_buffer_delay_unittest.cc +++ b/pc/jitter_buffer_delay_unittest.cc @@ -13,79 +13,47 @@ #include <stdint.h> #include "absl/types/optional.h" -#include "api/scoped_refptr.h" -#include "pc/test/mock_delayable.h" -#include "rtc_base/ref_counted_object.h" -#include "rtc_base/thread.h" -#include "test/gmock.h" #include "test/gtest.h" -using ::testing::Return; - -namespace { -constexpr int kSsrc = 1234; -} // namespace - namespace webrtc { class JitterBufferDelayTest : public ::testing::Test { public: - JitterBufferDelayTest() - : delay_(new rtc::RefCountedObject<JitterBufferDelay>( - rtc::Thread::Current())) {} + JitterBufferDelayTest() {} protected: - rtc::scoped_refptr<JitterBufferDelayInterface> delay_; - MockDelayable delayable_; + JitterBufferDelay delay_; }; TEST_F(JitterBufferDelayTest, Set) { - delay_->OnStart(&delayable_, kSsrc); - - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 3000)) - .WillOnce(Return(true)); - // Delay in seconds. - delay_->Set(3.0); + delay_.Set(3.0); + EXPECT_EQ(delay_.GetMs(), 3000); } -TEST_F(JitterBufferDelayTest, Caching) { - // Check that value is cached before start. - delay_->Set(4.0); - - // Check that cached value applied on the start. - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 4000)) - .WillOnce(Return(true)); - delay_->OnStart(&delayable_, kSsrc); +TEST_F(JitterBufferDelayTest, DefaultValue) { + EXPECT_EQ(delay_.GetMs(), 0); // Default value is 0ms. } TEST_F(JitterBufferDelayTest, Clamping) { - delay_->OnStart(&delayable_, kSsrc); - // In current Jitter Buffer implementation (Audio or Video) maximum supported // value is 10000 milliseconds. - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 10000)) - .WillOnce(Return(true)); - delay_->Set(10.5); + delay_.Set(10.5); + EXPECT_EQ(delay_.GetMs(), 10000); // Test int overflow. - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 10000)) - .WillOnce(Return(true)); - delay_->Set(21474836470.0); + delay_.Set(21474836470.0); + EXPECT_EQ(delay_.GetMs(), 10000); - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 0)) - .WillOnce(Return(true)); - delay_->Set(-21474836470.0); + delay_.Set(-21474836470.0); + EXPECT_EQ(delay_.GetMs(), 0); // Boundary value in seconds to milliseconds conversion. - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 0)) - .WillOnce(Return(true)); - delay_->Set(0.0009); - - EXPECT_CALL(delayable_, SetBaseMinimumPlayoutDelayMs(kSsrc, 0)) - .WillOnce(Return(true)); + delay_.Set(0.0009); + EXPECT_EQ(delay_.GetMs(), 0); - delay_->Set(-2.0); + delay_.Set(-2.0); + EXPECT_EQ(delay_.GetMs(), 0); } } // namespace webrtc |