Files
platform-external-webrtc/pc/test/mock_channel_interface.h
Markus Handell 5932fe1392 RtpTransceiverInterface: introduce HeaderExtensionsNegotiated.
This changes adds exposure of a new transceiver method for
accessing header extensions that have been negotiated, following
spec details in https://w3c.github.io/webrtc-extensions/#rtcrtptransceiver-interface.

The change contains unit tests testing the functionality.

Note: support for signalling directionality of header extensions
in the SDP isn't implemented yet.

https://chromestatus.com/feature/5680189201711104.
Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/65YdUi02yZk

Bug: chromium:1051821
Change-Id: If963beed37e96eed2dff3a2822db4e30caaea4a0
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/198126
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Markus Handell <handellm@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#32860}
2020-12-17 23:43:42 +00:00

72 lines
2.4 KiB
C++

/*
* Copyright 2018 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 PC_TEST_MOCK_CHANNEL_INTERFACE_H_
#define PC_TEST_MOCK_CHANNEL_INTERFACE_H_
#include <string>
#include <vector>
#include "pc/channel_interface.h"
#include "test/gmock.h"
namespace cricket {
// Mock class for BaseChannel.
// Use this class in unit tests to avoid dependecy on a specific
// implementation of BaseChannel.
class MockChannelInterface : public cricket::ChannelInterface {
public:
MOCK_METHOD(cricket::MediaType, media_type, (), (const, override));
MOCK_METHOD(MediaChannel*, media_channel, (), (const, override));
MOCK_METHOD(const std::string&, transport_name, (), (const, override));
MOCK_METHOD(const std::string&, content_name, (), (const, override));
MOCK_METHOD(bool, enabled, (), (const, override));
MOCK_METHOD(bool, Enable, (bool), (override));
MOCK_METHOD(sigslot::signal1<ChannelInterface*>&,
SignalFirstPacketReceived,
(),
(override));
MOCK_METHOD(bool,
SetLocalContent,
(const cricket::MediaContentDescription*,
webrtc::SdpType,
std::string*),
(override));
MOCK_METHOD(bool,
SetRemoteContent,
(const cricket::MediaContentDescription*,
webrtc::SdpType,
std::string*),
(override));
MOCK_METHOD(void, SetPayloadTypeDemuxingEnabled, (bool), (override));
MOCK_METHOD(bool, UpdateRtpTransport, (std::string*), (override));
MOCK_METHOD(const std::vector<StreamParams>&,
local_streams,
(),
(const, override));
MOCK_METHOD(const std::vector<StreamParams>&,
remote_streams,
(),
(const, override));
MOCK_METHOD(bool,
SetRtpTransport,
(webrtc::RtpTransportInternal*),
(override));
MOCK_METHOD(RtpHeaderExtensions,
GetNegotiatedRtpHeaderExtensions,
(),
(const));
};
} // namespace cricket
#endif // PC_TEST_MOCK_CHANNEL_INTERFACE_H_