1 /*
2  *  Copyright (c) 2012 The WebRTC project authors. All Rights Reserved.
3  *
4  *  Use of this source code is governed by a BSD-style license
5  *  that can be found in the LICENSE file in the root of the source
6  *  tree. An additional intellectual property rights grant can be found
7  *  in the file PATENTS.  All contributing project authors may
8  *  be found in the AUTHORS file in the root of the source tree.
9  */
10 
11 #ifndef WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_
12 #define WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_
13 
14 #include "webrtc/modules/audio_coding/neteq/delay_manager.h"
15 
16 #include "webrtc/test/gmock.h"
17 
18 namespace webrtc {
19 
20 class MockDelayManager : public DelayManager {
21  public:
MockDelayManager(size_t max_packets_in_buffer,DelayPeakDetector * peak_detector,const TickTimer * tick_timer)22   MockDelayManager(size_t max_packets_in_buffer,
23                    DelayPeakDetector* peak_detector,
24                    const TickTimer* tick_timer)
25       : DelayManager(max_packets_in_buffer, peak_detector, tick_timer) {}
~MockDelayManager()26   virtual ~MockDelayManager() { Die(); }
27   MOCK_METHOD0(Die, void());
28   MOCK_CONST_METHOD0(iat_vector,
29       const IATVector&());
30   MOCK_METHOD3(Update,
31       int(uint16_t sequence_number, uint32_t timestamp, int sample_rate_hz));
32   MOCK_METHOD1(CalculateTargetLevel,
33       int(int iat_packets));
34   MOCK_METHOD1(SetPacketAudioLength,
35       int(int length_ms));
36   MOCK_METHOD0(Reset,
37       void());
38   MOCK_CONST_METHOD0(PeakFound,
39       bool());
40   MOCK_METHOD1(UpdateCounters,
41       void(int elapsed_time_ms));
42   MOCK_METHOD0(ResetPacketIatCount,
43       void());
44   MOCK_CONST_METHOD2(BufferLimits,
45       void(int* lower_limit, int* higher_limit));
46   MOCK_CONST_METHOD0(TargetLevel,
47       int());
48   MOCK_METHOD1(set_extra_delay_ms,
49       void(int16_t delay));
50   MOCK_CONST_METHOD0(base_target_level,
51       int());
52   MOCK_METHOD1(set_streaming_mode,
53       void(bool value));
54   MOCK_CONST_METHOD0(last_pack_cng_or_dtmf,
55       int());
56   MOCK_METHOD1(set_last_pack_cng_or_dtmf,
57       void(int value));
58 };
59 
60 }  // namespace webrtc
61 #endif  // WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_
62