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 "testing/gmock/include/gmock/gmock.h"
17 
18 namespace webrtc {
19 
20 class MockDelayManager : public DelayManager {
21  public:
MockDelayManager(size_t max_packets_in_buffer,DelayPeakDetector * peak_detector)22   MockDelayManager(size_t max_packets_in_buffer,
23                    DelayPeakDetector* peak_detector)
24       : DelayManager(max_packets_in_buffer, peak_detector) {}
~MockDelayManager()25   virtual ~MockDelayManager() { Die(); }
26   MOCK_METHOD0(Die, void());
27   MOCK_CONST_METHOD0(iat_vector,
28       const IATVector&());
29   MOCK_METHOD3(Update,
30       int(uint16_t sequence_number, uint32_t timestamp, int sample_rate_hz));
31   MOCK_METHOD1(CalculateTargetLevel,
32       int(int iat_packets));
33   MOCK_METHOD1(SetPacketAudioLength,
34       int(int length_ms));
35   MOCK_METHOD0(Reset,
36       void());
37   MOCK_CONST_METHOD0(AverageIAT,
38       int());
39   MOCK_CONST_METHOD0(PeakFound,
40       bool());
41   MOCK_METHOD1(UpdateCounters,
42       void(int elapsed_time_ms));
43   MOCK_METHOD0(ResetPacketIatCount,
44       void());
45   MOCK_CONST_METHOD2(BufferLimits,
46       void(int* lower_limit, int* higher_limit));
47   MOCK_CONST_METHOD0(TargetLevel,
48       int());
49   MOCK_METHOD1(LastDecoderType,
50       void(NetEqDecoder decoder_type));
51   MOCK_METHOD1(set_extra_delay_ms,
52       void(int16_t delay));
53   MOCK_CONST_METHOD0(base_target_level,
54       int());
55   MOCK_METHOD1(set_streaming_mode,
56       void(bool value));
57   MOCK_CONST_METHOD0(last_pack_cng_or_dtmf,
58       int());
59   MOCK_METHOD1(set_last_pack_cng_or_dtmf,
60       void(int value));
61 };
62 
63 }  // namespace webrtc
64 #endif  // WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DELAY_MANAGER_H_
65