/* * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. * * Use of this source code is governed by a BSD-style license * that can be found in the LICENSE file in the root of the source * tree. An additional intellectual property rights grant can be found * in the file PATENTS. All contributing project authors may * be found in the AUTHORS file in the root of the source tree. */ #ifndef MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_ #define MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_ #include #include "modules/audio_coding/neteq/delay_manager.h" #include "modules/audio_coding/neteq/histogram.h" #include "modules/audio_coding/neteq/statistics_calculator.h" #include "test/gmock.h" namespace webrtc { class MockDelayManager : public DelayManager { public: MockDelayManager(size_t max_packets_in_buffer, int base_min_target_delay_ms, int histogram_quantile, HistogramMode histogram_mode, bool enable_rtx_handling, DelayPeakDetector* peak_detector, const TickTimer* tick_timer, StatisticsCalculator* stats, std::unique_ptr histogram) : DelayManager(max_packets_in_buffer, base_min_target_delay_ms, histogram_quantile, histogram_mode, enable_rtx_handling, peak_detector, tick_timer, stats, std::move(histogram)) {} virtual ~MockDelayManager() { Die(); } MOCK_METHOD0(Die, void()); MOCK_METHOD3(Update, int(uint16_t sequence_number, uint32_t timestamp, int sample_rate_hz)); MOCK_METHOD2(CalculateTargetLevel, int(int iat_packets, bool reordered)); MOCK_METHOD1(SetPacketAudioLength, int(int length_ms)); MOCK_METHOD0(Reset, void()); MOCK_CONST_METHOD0(PeakFound, bool()); MOCK_METHOD1(UpdateCounters, void(int elapsed_time_ms)); MOCK_METHOD0(ResetPacketIatCount, void()); MOCK_CONST_METHOD2(BufferLimits, void(int* lower_limit, int* higher_limit)); MOCK_METHOD1(SetBaseMinimumDelay, bool(int delay_ms)); MOCK_CONST_METHOD0(GetBaseMinimumDelay, int()); MOCK_CONST_METHOD0(TargetLevel, int()); MOCK_METHOD0(RegisterEmptyPacket, void()); MOCK_METHOD1(set_extra_delay_ms, void(int16_t delay)); MOCK_CONST_METHOD0(base_target_level, int()); MOCK_METHOD1(set_streaming_mode, void(bool value)); MOCK_CONST_METHOD0(last_pack_cng_or_dtmf, int()); MOCK_METHOD1(set_last_pack_cng_or_dtmf, void(int value)); }; } // namespace webrtc #endif // MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_