Index: content/renderer/media/mock_peer_connection_impl.cc |
diff --git a/content/renderer/media/mock_peer_connection_impl.cc b/content/renderer/media/mock_peer_connection_impl.cc |
index 2ec575071c9a0fcb6b71ea73ffd1b55590ed02ec..b102d817278c94f19437a085ab3fc4f4a2d29e59 100644 |
--- a/content/renderer/media/mock_peer_connection_impl.cc |
+++ b/content/renderer/media/mock_peer_connection_impl.cc |
@@ -11,6 +11,8 @@ |
#include "base/logging.h" |
#include "content/renderer/media/mock_data_channel_impl.h" |
#include "content/renderer/media/webrtc/mock_peer_connection_dependency_factory.h" |
+#include "third_party/webrtc/api/rtpreceiverinterface.h" |
+#include "third_party/webrtc/base/refcountedobject.h" |
using testing::_; |
using webrtc::AudioTrackInterface; |
@@ -114,6 +116,44 @@ class MockDtmfSender : public DtmfSenderInterface { |
int inter_tone_gap_; |
}; |
+class FakeRtpReceiver |
+ : public rtc::RefCountedObject<webrtc::RtpReceiverInterface> { |
+ public: |
+ FakeRtpReceiver(rtc::scoped_refptr<webrtc::MediaStreamTrackInterface> track) |
+ : track_(track) {} |
+ |
+ rtc::scoped_refptr<webrtc::MediaStreamTrackInterface> track() const override { |
+ return track_; |
+ } |
+ |
+ cricket::MediaType media_type() const override { |
+ NOTIMPLEMENTED(); |
+ return cricket::MEDIA_TYPE_AUDIO; |
+ } |
+ |
+ std::string id() const override { |
+ NOTIMPLEMENTED(); |
+ return ""; |
+ } |
+ |
+ webrtc::RtpParameters GetParameters() const override { |
+ NOTIMPLEMENTED(); |
+ return webrtc::RtpParameters(); |
+ } |
+ |
+ bool SetParameters(const webrtc::RtpParameters& parameters) override { |
+ NOTIMPLEMENTED(); |
+ return false; |
+ } |
+ |
+ void SetObserver(webrtc::RtpReceiverObserverInterface* observer) override { |
+ NOTIMPLEMENTED(); |
+ } |
+ |
+ private: |
+ rtc::scoped_refptr<webrtc::MediaStreamTrackInterface> track_; |
+}; |
+ |
const char MockPeerConnectionImpl::kDummyOffer[] = "dummy offer"; |
const char MockPeerConnectionImpl::kDummyAnswer[] = "dummy answer"; |
@@ -168,6 +208,20 @@ MockPeerConnectionImpl::CreateDtmfSender(AudioTrackInterface* track) { |
return new rtc::RefCountedObject<MockDtmfSender>(track); |
} |
+std::vector<rtc::scoped_refptr<webrtc::RtpReceiverInterface>> |
+MockPeerConnectionImpl::GetReceivers() const { |
+ std::vector<rtc::scoped_refptr<webrtc::RtpReceiverInterface>> receivers; |
+ for (size_t i = 0; i < remote_streams_->count(); ++i) { |
+ for (const auto& audio_track : remote_streams_->at(i)->GetAudioTracks()) { |
+ receivers.push_back(new FakeRtpReceiver(audio_track)); |
+ } |
+ for (const auto& video_track : remote_streams_->at(i)->GetVideoTracks()) { |
+ receivers.push_back(new FakeRtpReceiver(video_track)); |
+ } |
+ } |
+ return receivers; |
+} |
+ |
rtc::scoped_refptr<webrtc::DataChannelInterface> |
MockPeerConnectionImpl::CreateDataChannel(const std::string& label, |
const webrtc::DataChannelInit* config) { |