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_DECODER_DATABASE_H_ 12#define WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DECODER_DATABASE_H_ 13 14#include "webrtc/modules/audio_coding/neteq/decoder_database.h" 15 16#include "testing/gmock/include/gmock/gmock.h" 17 18namespace webrtc { 19 20class MockDecoderDatabase : public DecoderDatabase { 21 public: 22 virtual ~MockDecoderDatabase() { Die(); } 23 MOCK_METHOD0(Die, void()); 24 MOCK_CONST_METHOD0(Empty, 25 bool()); 26 MOCK_CONST_METHOD0(Size, 27 int()); 28 MOCK_METHOD0(Reset, 29 void()); 30 MOCK_METHOD2(RegisterPayload, 31 int(uint8_t rtp_payload_type, NetEqDecoder codec_type)); 32 MOCK_METHOD4(InsertExternal, 33 int(uint8_t rtp_payload_type, NetEqDecoder codec_type, int fs_hz, 34 AudioDecoder* decoder)); 35 MOCK_METHOD1(Remove, 36 int(uint8_t rtp_payload_type)); 37 MOCK_CONST_METHOD1(GetDecoderInfo, 38 const DecoderInfo*(uint8_t rtp_payload_type)); 39 MOCK_CONST_METHOD1(GetRtpPayloadType, 40 uint8_t(NetEqDecoder codec_type)); 41 MOCK_METHOD1(GetDecoder, 42 AudioDecoder*(uint8_t rtp_payload_type)); 43 MOCK_CONST_METHOD2(IsType, 44 bool(uint8_t rtp_payload_type, NetEqDecoder codec_type)); 45 MOCK_CONST_METHOD1(IsComfortNoise, 46 bool(uint8_t rtp_payload_type)); 47 MOCK_CONST_METHOD1(IsDtmf, 48 bool(uint8_t rtp_payload_type)); 49 MOCK_CONST_METHOD1(IsRed, 50 bool(uint8_t rtp_payload_type)); 51 MOCK_METHOD2(SetActiveDecoder, 52 int(uint8_t rtp_payload_type, bool* new_decoder)); 53 MOCK_METHOD0(GetActiveDecoder, 54 AudioDecoder*()); 55 MOCK_METHOD1(SetActiveCngDecoder, 56 int(uint8_t rtp_payload_type)); 57 MOCK_METHOD0(GetActiveCngDecoder, 58 AudioDecoder*()); 59 MOCK_CONST_METHOD1(CheckPayloadTypes, 60 int(const PacketList& packet_list)); 61}; 62 63} // namespace webrtc 64#endif // WEBRTC_MODULES_AUDIO_CODING_NETEQ_MOCK_MOCK_DECODER_DATABASE_H_ 65