blob: 54014da339a84cb332bbde473f2d59c3a426f5e1 [file] [log] [blame]
Stefan Holmer3842c5c2016-01-12 13:55:00 +01001/*
2 * Copyright (c) 2015 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_CALL_MOCK_MOCK_CONGESTION_CONTROLLER_H_
12#define WEBRTC_CALL_MOCK_MOCK_CONGESTION_CONTROLLER_H_
13
14#include "testing/gmock/include/gmock/gmock.h"
15#include "webrtc/call/congestion_controller.h"
16
17namespace webrtc {
18namespace test {
19
20class MockCongestionController : public CongestionController {
21 public:
22 MockCongestionController(ProcessThread* process_thread,
23 CallStats* call_stats,
24 BitrateObserver* bitrate_observer)
25 : CongestionController(process_thread, call_stats, bitrate_observer) {}
26 MOCK_METHOD1(AddEncoder, void(ViEEncoder* encoder));
27 MOCK_METHOD1(RemoveEncoder, void(ViEEncoder* encoder));
28 MOCK_METHOD3(SetBweBitrates,
29 void(int min_bitrate_bps,
30 int start_bitrate_bps,
31 int max_bitrate_bps));
32 MOCK_METHOD3(SetChannelRembStatus,
33 void(bool sender, bool receiver, RtpRtcp* rtp_module));
34 MOCK_METHOD1(SignalNetworkState, void(NetworkState state));
35 MOCK_CONST_METHOD0(GetBitrateController, BitrateController*());
36 MOCK_CONST_METHOD1(GetRemoteBitrateEstimator,
37 RemoteBitrateEstimator*(bool send_side_bwe));
38 MOCK_CONST_METHOD0(GetPacerQueuingDelayMs, int64_t());
39 MOCK_CONST_METHOD0(pacer, PacedSender*());
40 MOCK_CONST_METHOD0(packet_router, PacketRouter*());
41 MOCK_METHOD0(GetTransportFeedbackObserver, TransportFeedbackObserver*());
42 MOCK_METHOD3(UpdatePacerBitrate,
43 void(int bitrate_kbps,
44 int max_bitrate_kbps,
45 int min_bitrate_kbps));
46 MOCK_METHOD1(OnSentPacket, void(const rtc::SentPacket& sent_packet));
47
48 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(MockCongestionController);
49};
50} // namespace test
51} // namespace webrtc
52#endif // WEBRTC_CALL_MOCK_MOCK_CONGESTION_CONTROLLER_H_