1 /* 2 * Copyright 2016 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 PC_TEST_MOCK_RTP_SENDER_INTERNAL_H_ 12 #define PC_TEST_MOCK_RTP_SENDER_INTERNAL_H_ 13 14 #include <memory> 15 #include <string> 16 #include <vector> 17 18 #include "pc/rtp_sender.h" 19 #include "test/gmock.h" 20 21 namespace webrtc { 22 23 // The definition of MockRtpSender is copied in to avoid multiple inheritance. 24 class MockRtpSenderInternal : public RtpSenderInternal { 25 public: 26 // RtpSenderInterface methods. 27 MOCK_METHOD(bool, SetTrack, (MediaStreamTrackInterface*), (override)); 28 MOCK_METHOD(rtc::scoped_refptr<MediaStreamTrackInterface>, 29 track, 30 (), 31 (const, override)); 32 MOCK_METHOD(uint32_t, ssrc, (), (const, override)); 33 MOCK_METHOD(rtc::scoped_refptr<DtlsTransportInterface>, 34 dtls_transport, 35 (), 36 (const, override)); 37 MOCK_METHOD(cricket::MediaType, media_type, (), (const, override)); 38 MOCK_METHOD(std::string, id, (), (const, override)); 39 MOCK_METHOD(std::vector<std::string>, stream_ids, (), (const, override)); 40 MOCK_METHOD(std::vector<RtpEncodingParameters>, 41 init_send_encodings, 42 (), 43 (const, override)); 44 MOCK_METHOD(void, 45 set_transport, 46 (rtc::scoped_refptr<DtlsTransportInterface>), 47 (override)); 48 MOCK_METHOD(RtpParameters, GetParameters, (), (const, override)); 49 MOCK_METHOD(RtpParameters, GetParametersInternal, (), (const, override)); 50 MOCK_METHOD(RtpParameters, 51 GetParametersInternalWithAllLayers, 52 (), 53 (const, override)); 54 MOCK_METHOD(RTCError, SetParameters, (const RtpParameters&), (override)); 55 MOCK_METHOD(void, 56 SetParametersAsync, 57 (const RtpParameters&, SetParametersCallback), 58 (override)); 59 MOCK_METHOD(void, 60 SetParametersInternal, 61 (const RtpParameters&, SetParametersCallback, bool blocking), 62 (override)); 63 MOCK_METHOD(RTCError, 64 SetParametersInternalWithAllLayers, 65 (const RtpParameters&), 66 (override)); 67 MOCK_METHOD(RTCError, CheckSVCParameters, (const RtpParameters&), (override)); 68 MOCK_METHOD(void, 69 SetVideoCodecPreferences, 70 (std::vector<cricket::VideoCodec>), 71 (override)); 72 MOCK_METHOD(rtc::scoped_refptr<DtmfSenderInterface>, 73 GetDtmfSender, 74 (), 75 (const, override)); 76 MOCK_METHOD(void, 77 SetFrameEncryptor, 78 (rtc::scoped_refptr<FrameEncryptorInterface>), 79 (override)); 80 MOCK_METHOD(rtc::scoped_refptr<FrameEncryptorInterface>, 81 GetFrameEncryptor, 82 (), 83 (const, override)); 84 MOCK_METHOD(void, 85 SetEncoderToPacketizerFrameTransformer, 86 (rtc::scoped_refptr<FrameTransformerInterface>), 87 (override)); 88 MOCK_METHOD(void, 89 SetEncoderSelector, 90 (std::unique_ptr<VideoEncoderFactory::EncoderSelectorInterface>), 91 (override)); 92 93 // RtpSenderInternal methods. 94 MOCK_METHOD1(SetMediaChannel, void(cricket::MediaChannel*)); 95 MOCK_METHOD1(SetSsrc, void(uint32_t)); 96 MOCK_METHOD1(set_stream_ids, void(const std::vector<std::string>&)); 97 MOCK_METHOD1(SetStreams, void(const std::vector<std::string>&)); 98 MOCK_METHOD1(set_init_send_encodings, 99 void(const std::vector<RtpEncodingParameters>&)); 100 MOCK_METHOD0(Stop, void()); 101 MOCK_CONST_METHOD0(AttachmentId, int()); 102 MOCK_METHOD1(DisableEncodingLayers, 103 RTCError(const std::vector<std::string>&)); 104 MOCK_METHOD0(SetTransceiverAsStopped, void()); 105 }; 106 107 } // namespace webrtc 108 109 #endif // PC_TEST_MOCK_RTP_SENDER_INTERNAL_H_ 110