1*d9f75844SAndroid Build Coastguard Worker /* 2*d9f75844SAndroid Build Coastguard Worker * Copyright 2016 The WebRTC project authors. All Rights Reserved. 3*d9f75844SAndroid Build Coastguard Worker * 4*d9f75844SAndroid Build Coastguard Worker * Use of this source code is governed by a BSD-style license 5*d9f75844SAndroid Build Coastguard Worker * that can be found in the LICENSE file in the root of the source 6*d9f75844SAndroid Build Coastguard Worker * tree. An additional intellectual property rights grant can be found 7*d9f75844SAndroid Build Coastguard Worker * in the file PATENTS. All contributing project authors may 8*d9f75844SAndroid Build Coastguard Worker * be found in the AUTHORS file in the root of the source tree. 9*d9f75844SAndroid Build Coastguard Worker */ 10*d9f75844SAndroid Build Coastguard Worker 11*d9f75844SAndroid Build Coastguard Worker #ifndef PC_TEST_MOCK_DATA_CHANNEL_H_ 12*d9f75844SAndroid Build Coastguard Worker #define PC_TEST_MOCK_DATA_CHANNEL_H_ 13*d9f75844SAndroid Build Coastguard Worker 14*d9f75844SAndroid Build Coastguard Worker #include <string> 15*d9f75844SAndroid Build Coastguard Worker 16*d9f75844SAndroid Build Coastguard Worker #include "pc/sctp_data_channel.h" 17*d9f75844SAndroid Build Coastguard Worker #include "test/gmock.h" 18*d9f75844SAndroid Build Coastguard Worker 19*d9f75844SAndroid Build Coastguard Worker namespace webrtc { 20*d9f75844SAndroid Build Coastguard Worker 21*d9f75844SAndroid Build Coastguard Worker class MockSctpDataChannel : public SctpDataChannel { 22*d9f75844SAndroid Build Coastguard Worker public: MockSctpDataChannel(int id,DataState state)23*d9f75844SAndroid Build Coastguard Worker MockSctpDataChannel(int id, DataState state) 24*d9f75844SAndroid Build Coastguard Worker : MockSctpDataChannel(id, 25*d9f75844SAndroid Build Coastguard Worker "MockSctpDataChannel", 26*d9f75844SAndroid Build Coastguard Worker state, 27*d9f75844SAndroid Build Coastguard Worker "udp", 28*d9f75844SAndroid Build Coastguard Worker 0, 29*d9f75844SAndroid Build Coastguard Worker 0, 30*d9f75844SAndroid Build Coastguard Worker 0, 31*d9f75844SAndroid Build Coastguard Worker 0) {} 32*d9f75844SAndroid Build Coastguard Worker MockSctpDataChannel( 33*d9f75844SAndroid Build Coastguard Worker int id, 34*d9f75844SAndroid Build Coastguard Worker const std::string& label, 35*d9f75844SAndroid Build Coastguard Worker DataState state, 36*d9f75844SAndroid Build Coastguard Worker const std::string& protocol, 37*d9f75844SAndroid Build Coastguard Worker uint32_t messages_sent, 38*d9f75844SAndroid Build Coastguard Worker uint64_t bytes_sent, 39*d9f75844SAndroid Build Coastguard Worker uint32_t messages_received, 40*d9f75844SAndroid Build Coastguard Worker uint64_t bytes_received, 41*d9f75844SAndroid Build Coastguard Worker const InternalDataChannelInit& config = InternalDataChannelInit(), 42*d9f75844SAndroid Build Coastguard Worker rtc::Thread* signaling_thread = rtc::Thread::Current(), 43*d9f75844SAndroid Build Coastguard Worker rtc::Thread* network_thread = rtc::Thread::Current()) SctpDataChannel(config,nullptr,label,signaling_thread,network_thread)44*d9f75844SAndroid Build Coastguard Worker : SctpDataChannel(config, 45*d9f75844SAndroid Build Coastguard Worker nullptr, 46*d9f75844SAndroid Build Coastguard Worker label, 47*d9f75844SAndroid Build Coastguard Worker signaling_thread, 48*d9f75844SAndroid Build Coastguard Worker network_thread) { 49*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, id()).WillRepeatedly(::testing::Return(id)); 50*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, state()).WillRepeatedly(::testing::Return(state)); 51*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, protocol()).WillRepeatedly(::testing::Return(protocol)); 52*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, messages_sent()) 53*d9f75844SAndroid Build Coastguard Worker .WillRepeatedly(::testing::Return(messages_sent)); 54*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, bytes_sent()) 55*d9f75844SAndroid Build Coastguard Worker .WillRepeatedly(::testing::Return(bytes_sent)); 56*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, messages_received()) 57*d9f75844SAndroid Build Coastguard Worker .WillRepeatedly(::testing::Return(messages_received)); 58*d9f75844SAndroid Build Coastguard Worker EXPECT_CALL(*this, bytes_received()) 59*d9f75844SAndroid Build Coastguard Worker .WillRepeatedly(::testing::Return(bytes_received)); 60*d9f75844SAndroid Build Coastguard Worker } 61*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(int, id, (), (const, override)); 62*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(DataState, state, (), (const, override)); 63*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(std::string, protocol, (), (const, override)); 64*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(uint32_t, messages_sent, (), (const, override)); 65*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(uint64_t, bytes_sent, (), (const, override)); 66*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(uint32_t, messages_received, (), (const, override)); 67*d9f75844SAndroid Build Coastguard Worker MOCK_METHOD(uint64_t, bytes_received, (), (const, override)); 68*d9f75844SAndroid Build Coastguard Worker }; 69*d9f75844SAndroid Build Coastguard Worker 70*d9f75844SAndroid Build Coastguard Worker } // namespace webrtc 71*d9f75844SAndroid Build Coastguard Worker 72*d9f75844SAndroid Build Coastguard Worker #endif // PC_TEST_MOCK_DATA_CHANNEL_H_ 73