Move SelectMediaType from RampUpTester to BaseTest.
This provides a better default for audio-only tests.
BUG=None
Review-Url: https://codereview.webrtc.org/2794193003
Cr-Commit-Position: refs/heads/master@{#17536}
diff --git a/webrtc/call/rampup_tests.cc b/webrtc/call/rampup_tests.cc
index 6c3cce6..b75418d 100644
--- a/webrtc/call/rampup_tests.cc
+++ b/webrtc/call/rampup_tests.cc
@@ -89,19 +89,6 @@
send_stream_ = send_stream;
}
-MediaType RampUpTester::SelectMediaType() {
- if (num_video_streams_ > 0) {
- if (num_audio_streams_ > 0) {
- // Rely on call to set media type from payload type.
- return MediaType::ANY;
- } else {
- return MediaType::VIDEO;
- }
- } else {
- return MediaType::AUDIO;
- }
-}
-
test::PacketTransport* RampUpTester::CreateSendTransport(Call* sender_call) {
send_transport_ = new test::PacketTransport(sender_call, this,
test::PacketTransport::kSender,
@@ -110,13 +97,6 @@
return send_transport_;
}
-test::PacketTransport* RampUpTester::CreateReceiveTransport() {
- return new test::PacketTransport(nullptr, this,
- test::PacketTransport::kReceiver,
- SelectMediaType(),
- FakeNetworkPipe::Config());
-}
-
size_t RampUpTester::GetNumVideoStreams() const {
return num_video_streams_;
}
diff --git a/webrtc/call/rampup_tests.h b/webrtc/call/rampup_tests.h
index 5b24536..6710dd1 100644
--- a/webrtc/call/rampup_tests.h
+++ b/webrtc/call/rampup_tests.h
@@ -84,9 +84,7 @@
void OnVideoStreamsCreated(
VideoSendStream* send_stream,
const std::vector<VideoReceiveStream*>& receive_streams) override;
- MediaType SelectMediaType();
test::PacketTransport* CreateSendTransport(Call* sender_call) override;
- test::PacketTransport* CreateReceiveTransport() override;
void ModifyVideoConfigs(
VideoSendStream::Config* send_config,
std::vector<VideoReceiveStream::Config>* receive_configs,
diff --git a/webrtc/test/call_test.cc b/webrtc/test/call_test.cc
index 023ff1a..244b79b 100644
--- a/webrtc/test/call_test.cc
+++ b/webrtc/test/call_test.cc
@@ -492,15 +492,28 @@
void BaseTest::OnCallsCreated(Call* sender_call, Call* receiver_call) {
}
+MediaType BaseTest::SelectMediaType() {
+ if (GetNumVideoStreams() > 0) {
+ if (GetNumAudioStreams() > 0) {
+ // Relies on PayloadDemuxer to set media type from payload type.
+ return MediaType::ANY;
+ } else {
+ return MediaType::VIDEO;
+ }
+ } else {
+ return MediaType::AUDIO;
+ }
+}
+
test::PacketTransport* BaseTest::CreateSendTransport(Call* sender_call) {
return new PacketTransport(sender_call, this, test::PacketTransport::kSender,
- MediaType::VIDEO,
+ SelectMediaType(),
FakeNetworkPipe::Config());
}
test::PacketTransport* BaseTest::CreateReceiveTransport() {
return new PacketTransport(nullptr, this, test::PacketTransport::kReceiver,
- MediaType::VIDEO,
+ SelectMediaType(),
FakeNetworkPipe::Config());
}
diff --git a/webrtc/test/call_test.h b/webrtc/test/call_test.h
index b4f6658..b96e5e6 100644
--- a/webrtc/test/call_test.h
+++ b/webrtc/test/call_test.h
@@ -192,7 +192,10 @@
virtual Call::Config GetReceiverCallConfig();
virtual void OnCallsCreated(Call* sender_call, Call* receiver_call);
- // The default implementation creates MediaType::VIDEO transports.
+ // Returns VIDEO for video-only tests, AUDIO for audio-only tests,
+ // and ANY for tests sending audio and video over the same
+ // transport.
+ virtual MediaType SelectMediaType();
virtual test::PacketTransport* CreateSendTransport(Call* sender_call);
virtual test::PacketTransport* CreateReceiveTransport();