diff --git a/api/BUILD.gn b/api/BUILD.gn index 12511518f5..59eec12698 100644 --- a/api/BUILD.gn +++ b/api/BUILD.gn @@ -1143,6 +1143,16 @@ if (rtc_include_tests) { ] } + rtc_source_set("mock_session_description_interface") { + visibility = [ "*" ] + testonly = true + sources = [ "test/mock_session_description_interface.h" ] + deps = [ + ":libjingle_peerconnection_api", + "../test:test_support", + ] + } + rtc_source_set("mock_async_dns_resolver") { visibility = [ "*" ] testonly = true @@ -1349,6 +1359,7 @@ if (rtc_include_tests) { ":mock_peer_connection_factory_interface", ":mock_peerconnectioninterface", ":mock_rtp", + ":mock_session_description_interface", ":mock_transformable_video_frame", ":mock_video_bitrate_allocator", ":mock_video_bitrate_allocator_factory", diff --git a/api/test/mock_session_description_interface.h b/api/test/mock_session_description_interface.h new file mode 100644 index 0000000000..2a6ce0c662 --- /dev/null +++ b/api/test/mock_session_description_interface.h @@ -0,0 +1,51 @@ +/* + * Copyright 2022 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 API_TEST_MOCK_SESSION_DESCRIPTION_INTERFACE_H_ +#define API_TEST_MOCK_SESSION_DESCRIPTION_INTERFACE_H_ + +#include +#include +#include +#include + +#include "api/jsep.h" +#include "test/gmock.h" + +namespace webrtc { + +class MockSessionDescriptionInterface : public SessionDescriptionInterface { + public: + MOCK_METHOD(std::unique_ptr, + Clone, + (), + (const, override)); + MOCK_METHOD(cricket::SessionDescription*, description, (), (override)); + MOCK_METHOD(const cricket::SessionDescription*, + description, + (), + (const, override)); + MOCK_METHOD(SdpType, GetType, (), (const, override)); + MOCK_METHOD(std::string, type, (), (const, override)); + MOCK_METHOD(bool, AddCandidate, (const IceCandidateInterface*), (override)); + MOCK_METHOD(size_t, + RemoveCandidates, + (const std::vector&), + (override)); + MOCK_METHOD(size_t, number_of_mediasections, (), (const, override)); + MOCK_METHOD(IceCandidateCollection*, candidates, (size_t), (const, override)); + MOCK_METHOD(bool, ToString, (std::string*), (const, override)); +}; + +static_assert(!std::is_abstract_v); + +} // namespace webrtc + +#endif // API_TEST_MOCK_SESSION_DESCRIPTION_INTERFACE_H_