blob: ca39d2abb5933c731f31a2077a86ecb8f0314424 [file] [log] [blame]
hbosb24b1ce2016-08-16 01:19:43 -07001/*
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 WEBRTC_API_TEST_MOCK_PEERCONNECTION_H_
12#define WEBRTC_API_TEST_MOCK_PEERCONNECTION_H_
13
14#include <vector>
15
16#include "webrtc/api/peerconnection.h"
kwiberg77eab702016-09-28 17:42:01 -070017#include "webrtc/test/gmock.h"
hbosb24b1ce2016-08-16 01:19:43 -070018
19namespace webrtc {
20
21// The factory isn't really used; it just satisfies the base PeerConnection.
22class FakePeerConnectionFactory
23 : public rtc::RefCountedObject<webrtc::PeerConnectionFactory> {};
24
25class MockPeerConnection
26 : public rtc::RefCountedObject<webrtc::PeerConnection> {
27 public:
28 MockPeerConnection()
29 : rtc::RefCountedObject<webrtc::PeerConnection>(
30 new FakePeerConnectionFactory()) {}
hbos09bc1282016-11-08 06:29:22 -080031 MOCK_METHOD0(local_streams,
32 rtc::scoped_refptr<StreamCollectionInterface>());
33 MOCK_METHOD0(remote_streams,
34 rtc::scoped_refptr<StreamCollectionInterface>());
hbosb24b1ce2016-08-16 01:19:43 -070035 MOCK_METHOD0(session, WebRtcSession*());
hbos84abeb12017-01-16 06:16:44 -080036 MOCK_CONST_METHOD0(GetSenders,
37 std::vector<rtc::scoped_refptr<RtpSenderInterface>>());
38 MOCK_CONST_METHOD0(GetReceivers,
39 std::vector<rtc::scoped_refptr<RtpReceiverInterface>>());
hbosb24b1ce2016-08-16 01:19:43 -070040 MOCK_CONST_METHOD0(sctp_data_channels,
41 const std::vector<rtc::scoped_refptr<DataChannel>>&());
42};
43
44} // namespace webrtc
45
46#endif // WEBRTC_API_TEST_MOCK_PEERCONNECTION_H_