mock_rtp_transport_controller_send.h (5059B)
1 /* 2 * Copyright (c) 2018 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 CALL_TEST_MOCK_RTP_TRANSPORT_CONTROLLER_SEND_H_ 12 #define CALL_TEST_MOCK_RTP_TRANSPORT_CONTROLLER_SEND_H_ 13 14 #include <cstddef> 15 #include <cstdint> 16 #include <map> 17 #include <memory> 18 #include <optional> 19 20 #include "absl/strings/string_view.h" 21 #include "api/fec_controller.h" 22 #include "api/frame_transformer_interface.h" 23 #include "api/scoped_refptr.h" 24 #include "api/transport/bandwidth_estimation_settings.h" 25 #include "api/transport/bitrate_settings.h" 26 #include "api/transport/network_control.h" 27 #include "api/transport/network_types.h" 28 #include "api/units/timestamp.h" 29 #include "call/rtp_config.h" 30 #include "call/rtp_transport_controller_send_interface.h" 31 #include "modules/pacing/packet_router.h" 32 #include "modules/rtp_rtcp/include/rtp_rtcp_defines.h" 33 #include "modules/rtp_rtcp/source/rtp_rtcp_interface.h" 34 #include "rtc_base/network/sent_packet.h" 35 #include "rtc_base/network_route.h" 36 #include "test/gmock.h" 37 38 namespace webrtc { 39 40 class MockRtpTransportControllerSend 41 : public RtpTransportControllerSendInterface { 42 public: 43 MOCK_METHOD(RtpVideoSenderInterface*, 44 CreateRtpVideoSender, 45 ((const std::map<uint32_t, RtpState>&), 46 (const std::map<uint32_t, RtpPayloadState>&), 47 const RtpConfig&, 48 int rtcp_report_interval_ms, 49 Transport*, 50 const RtpSenderObservers&, 51 std::unique_ptr<FecController>, 52 const RtpSenderFrameEncryptionConfig&, 53 scoped_refptr<FrameTransformerInterface>), 54 (override)); 55 MOCK_METHOD(void, 56 DestroyRtpVideoSender, 57 (RtpVideoSenderInterface*), 58 (override)); 59 MOCK_METHOD(void, RegisterSendingRtpStream, (RtpRtcpInterface&), (override)); 60 MOCK_METHOD(void, 61 DeRegisterSendingRtpStream, 62 (RtpRtcpInterface&), 63 (override)); 64 MOCK_METHOD(PacketRouter*, packet_router, (), (override)); 65 MOCK_METHOD(NetworkStateEstimateObserver*, 66 network_state_estimate_observer, 67 (), 68 (override)); 69 MOCK_METHOD(RtpPacketSender*, packet_sender, (), (override)); 70 MOCK_METHOD(void, 71 SetAllocatedSendBitrateLimits, 72 (BitrateAllocationLimits), 73 (override)); 74 MOCK_METHOD(void, 75 ReconfigureBandwidthEstimation, 76 (const BandwidthEstimationSettings&), 77 (override)); 78 MOCK_METHOD(void, SetPacingFactor, (float), (override)); 79 MOCK_METHOD(void, SetQueueTimeLimit, (int), (override)); 80 MOCK_METHOD(StreamFeedbackProvider*, 81 GetStreamFeedbackProvider, 82 (), 83 (override)); 84 MOCK_METHOD(void, 85 RegisterTargetTransferRateObserver, 86 (TargetTransferRateObserver*), 87 (override)); 88 MOCK_METHOD(void, 89 OnNetworkRouteChanged, 90 (absl::string_view, const webrtc::NetworkRoute&), 91 (override)); 92 MOCK_METHOD(void, OnNetworkAvailability, (bool), (override)); 93 MOCK_METHOD(NetworkLinkRtcpObserver*, GetRtcpObserver, (), (override)); 94 MOCK_METHOD(int64_t, GetPacerQueuingDelayMs, (), (const, override)); 95 MOCK_METHOD(std::optional<Timestamp>, 96 GetFirstPacketTime, 97 (), 98 (const, override)); 99 MOCK_METHOD(void, EnablePeriodicAlrProbing, (bool), (override)); 100 MOCK_METHOD(void, OnSentPacket, (const SentPacketInfo&), (override)); 101 MOCK_METHOD(void, 102 SetSdpBitrateParameters, 103 (const BitrateConstraints&), 104 (override)); 105 MOCK_METHOD(void, 106 SetClientBitratePreferences, 107 (const BitrateSettings&), 108 (override)); 109 MOCK_METHOD(void, OnTransportOverheadChanged, (size_t), (override)); 110 MOCK_METHOD(void, AccountForAudioPacketsInPacedSender, (bool), (override)); 111 MOCK_METHOD(void, IncludeOverheadInPacedSender, (), (override)); 112 MOCK_METHOD(void, OnReceivedPacket, (const ReceivedPacket&), (override)); 113 MOCK_METHOD(void, EnsureStarted, (), (override)); 114 MOCK_METHOD(NetworkControllerInterface*, 115 GetNetworkController, 116 (), 117 (override)); 118 MOCK_METHOD(void, 119 EnableCongestionControlFeedbackAccordingToRfc8888, 120 (), 121 (override)); 122 MOCK_METHOD(std::optional<int>, 123 ReceivedCongestionControlFeedbackCount, 124 (), 125 (const, override)); 126 MOCK_METHOD(std::optional<int>, 127 ReceivedTransportCcFeedbackCount, 128 (), 129 (const, override)); 130 }; 131 } // namespace webrtc 132 #endif // CALL_TEST_MOCK_RTP_TRANSPORT_CONTROLLER_SEND_H_