Index: webrtc/api/test/fakertpsenderreceiver.h |
diff --git a/webrtc/api/test/fakertpsenderreceiver.h b/webrtc/api/test/fakertpsenderreceiver.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..495c6af78222dd207a8ab7cc49f2707e74fc791d |
--- /dev/null |
+++ b/webrtc/api/test/fakertpsenderreceiver.h |
@@ -0,0 +1,107 @@ |
+/* |
+ * 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 WEBRTC_API_TEST_FAKERTPSENDERRECEIVER_H_ |
+#define WEBRTC_API_TEST_FAKERTPSENDERRECEIVER_H_ |
+ |
+#include <string> |
+#include <vector> |
+ |
+#include "webrtc/api/rtpparameters.h" |
+#include "webrtc/api/rtpreceiverinterface.h" |
+#include "webrtc/api/rtpsenderinterface.h" |
+#include "webrtc/base/checks.h" |
+#include "webrtc/base/optional.h" |
+ |
+namespace webrtc { |
+ |
+RtpParameters CreateRtpParametersWithSsrc(uint32_t ssrc) { |
hta-webrtc
2017/01/02 15:29:47
I don't like having all this stuff in a .h file. I
pthatcher1
2017/01/03 19:29:00
I'd prefer a name like CreateRtpParametersWithOneS
|
+ RtpParameters params; |
+ RtpEncodingParameters encoding_params; |
+ encoding_params.ssrc = rtc::Optional<uint32_t>(ssrc); |
+ params.encodings.push_back(encoding_params); |
+ return params; |
+} |
+ |
+class FakeRtpSender : public rtc::RefCountedObject<RtpSenderInterface> { |
+ public: |
+ FakeRtpSender(cricket::MediaType media_type, RtpParameters parameters) |
+ : media_type_(media_type), rtp_parameters_(parameters) {} |
+ |
+ bool SetTrack(MediaStreamTrackInterface* track) override { |
+ track_ = track; |
+ return true; |
+ } |
+ |
+ rtc::scoped_refptr<MediaStreamTrackInterface> track() const override { |
+ return track_; |
+ } |
+ |
+ uint32_t ssrc() const override { |
+ RTC_DCHECK(GetParameters().encodings[0].ssrc); |
+ return *GetParameters().encodings[0].ssrc; |
+ } |
+ |
+ cricket::MediaType media_type() const override { return media_type_; } |
+ std::string id() const override { return "FakeRtpSender"; } |
+ |
+ std::vector<std::string> stream_ids() const override { |
+ RTC_NOTREACHED(); |
+ return std::vector<std::string>(); |
+ } |
+ |
+ RtpParameters GetParameters() const override { return rtp_parameters_; } |
+ |
+ bool SetParameters(const RtpParameters& parameters) override { |
+ rtp_parameters_ = parameters; |
+ return true; |
+ } |
+ |
+ private: |
+ const cricket::MediaType media_type_; |
+ RtpParameters rtp_parameters_; |
+ rtc::scoped_refptr<MediaStreamTrackInterface> track_; |
+}; |
+ |
+class FakeRtpReceiver : public rtc::RefCountedObject<RtpReceiverInterface> { |
+ public: |
+ FakeRtpReceiver(cricket::MediaType media_type, RtpParameters parameters) |
+ : media_type_(media_type), rtp_parameters_(parameters) {} |
+ |
+ void SetTrack(MediaStreamTrackInterface* track) { |
+ track_ = track; |
+ } |
+ |
+ rtc::scoped_refptr<MediaStreamTrackInterface> track() const override { |
+ return track_; |
+ } |
+ |
+ cricket::MediaType media_type() const override { return media_type_; } |
+ std::string id() const override { return "FakeRtpReceiver"; } |
+ RtpParameters GetParameters() const override { return rtp_parameters_; } |
+ |
+ bool SetParameters(const RtpParameters& parameters) override { |
+ rtp_parameters_ = parameters; |
+ return true; |
+ } |
+ |
+ void SetObserver(RtpReceiverObserverInterface* observer) override { |
+ RTC_NOTREACHED(); |
+ } |
+ |
+ private: |
+ const cricket::MediaType media_type_; |
+ RtpParameters rtp_parameters_; |
+ rtc::scoped_refptr<MediaStreamTrackInterface> track_; |
+}; |
+ |
+} // namespace webrtc |
+ |
+#endif // WEBRTC_API_TEST_FAKERTPSENDERRECEIVER_H_ |