/* * Copyright 2016 The WebRTC Project Authors. All rights reserved. * * Use of this source code is governed by a BSD-style license * that can be found in the LICENSE file in the root of the source * tree. An additional intellectual property rights grant can be found * in the file PATENTS. All contributing project authors may * be found in the AUTHORS file in the root of the source tree. */ #ifndef P2P_TEST_MOCK_ICE_TRANSPORT_H_ #define P2P_TEST_MOCK_ICE_TRANSPORT_H_ #include #include #include #include "api/candidate.h" #include "api/transport/enums.h" #include "p2p/base/candidate_pair_interface.h" #include "p2p/base/ice_transport_internal.h" #include "p2p/base/transport_description.h" #include "rtc_base/async_packet_socket.h" #include "rtc_base/socket.h" #include "test/gmock.h" namespace webrtc { // Used in Chromium/remoting/protocol/channel_socket_adapter_unittest.cc class MockIceTransport : public IceTransportInternal { public: MockIceTransport() { NotifyReadyToSend(this); NotifyWritableState(this); } MOCK_METHOD(int, SendPacket, (const char* data, size_t len, const AsyncSocketPacketOptions& options, int flags), (override)); MOCK_METHOD(int, SetOption, (Socket::Option opt, int value), (override)); MOCK_METHOD(int, GetError, (), (override)); MOCK_METHOD(IceRole, GetIceRole, (), (const, override)); MOCK_METHOD(bool, GetStats, (IceTransportStats * ice_transport_stats), (override)); MOCK_METHOD(IceTransportStateInternal, GetState, (), (const override)); MOCK_METHOD(IceTransportState, GetIceTransportState, (), (const override)); MOCK_METHOD(const std::string&, transport_name, (), (const override)); MOCK_METHOD(int, component, (), (const override)); MOCK_METHOD(void, SetIceRole, (IceRole), (override)); // The ufrag and pwd in `ice_params` must be set // before candidate gathering can start. MOCK_METHOD(void, SetIceParameters, (const IceParameters&), (override)); MOCK_METHOD(void, SetRemoteIceParameters, (const IceParameters&), (override)); MOCK_METHOD(void, SetRemoteIceMode, (IceMode), (override)); MOCK_METHOD(void, SetIceConfig, (const IceConfig& config), (override)); MOCK_METHOD(const IceConfig&, config, (), (const override)); MOCK_METHOD(std::optional, GetRttEstimate, (), (override)); MOCK_METHOD(std::optional, GetSelectedCandidatePair, (), (const, override)); MOCK_METHOD(void, MaybeStartGathering, (), (override)); MOCK_METHOD(void, AddRemoteCandidate, (const Candidate&), (override)); MOCK_METHOD(void, RemoveRemoteCandidate, (const Candidate&), (override)); MOCK_METHOD(void, RemoveAllRemoteCandidates, (), (override)); MOCK_METHOD(IceGatheringState, gathering_state, (), (const override)); MOCK_METHOD(bool, receiving, (), (const override)); MOCK_METHOD(bool, writable, (), (const override)); }; } // namespace webrtc #endif // P2P_TEST_MOCK_ICE_TRANSPORT_H_