Call OnSentPacket for all packets sent in the test framework.
Required a bit of refactoring to make it possible to pass a Call to DirectTransport on construction. This also lead to me having to remove the shared lock between PacketTransport and RtpRtcpObserver. Now RtpRtcpObserver has a SetTransports method instead of a SetReceivers method.
BUG=webrtc:4173
Review URL: https://codereview.webrtc.org/1419193002
Cr-Commit-Position: refs/heads/master@{#10430}
diff --git a/webrtc/test/call_test.cc b/webrtc/test/call_test.cc
index f2b5f91..7d73f15 100644
--- a/webrtc/test/call_test.cc
+++ b/webrtc/test/call_test.cc
@@ -27,22 +27,30 @@
CallTest::~CallTest() {
}
-void CallTest::RunBaseTest(BaseTest* test) {
+void CallTest::RunBaseTest(BaseTest* test,
+ const FakeNetworkPipe::Config& config) {
CreateSenderCall(test->GetSenderCallConfig());
if (test->ShouldCreateReceivers())
CreateReceiverCall(test->GetReceiverCallConfig());
+ send_transport_.reset(new PacketTransport(
+ sender_call_.get(), test, test::PacketTransport::kSender, config));
+ receive_transport_.reset(new PacketTransport(
+ nullptr, test, test::PacketTransport::kReceiver, config));
+ test->OnTransportsCreated(send_transport_.get(), receive_transport_.get());
test->OnCallsCreated(sender_call_.get(), receiver_call_.get());
if (test->ShouldCreateReceivers()) {
- test->SetReceivers(receiver_call_->Receiver(), sender_call_->Receiver());
+ send_transport_->SetReceiver(receiver_call_->Receiver());
+ receive_transport_->SetReceiver(sender_call_->Receiver());
} else {
// Sender-only call delivers to itself.
- test->SetReceivers(sender_call_->Receiver(), NULL);
+ send_transport_->SetReceiver(sender_call_->Receiver());
+ receive_transport_->SetReceiver(nullptr);
}
- CreateSendConfig(test->GetNumStreams(), test->SendTransport());
+ CreateSendConfig(test->GetNumStreams(), send_transport_.get());
if (test->ShouldCreateReceivers()) {
- CreateMatchingReceiveConfigs(test->ReceiveTransport());
+ CreateMatchingReceiveConfigs(receive_transport_.get());
}
test->ModifyConfigs(&send_config_, &receive_configs_, &encoder_config_);
CreateStreams();
@@ -53,7 +61,8 @@
Start();
test->PerformTest();
- test->StopSending();
+ send_transport_->StopSending();
+ receive_transport_->StopSending();
Stop();
DestroyStreams();
@@ -182,11 +191,6 @@
BaseTest::BaseTest(unsigned int timeout_ms) : RtpRtcpObserver(timeout_ms) {
}
-BaseTest::BaseTest(unsigned int timeout_ms,
- const FakeNetworkPipe::Config& config)
- : RtpRtcpObserver(timeout_ms, config) {
-}
-
BaseTest::~BaseTest() {
}
@@ -201,6 +205,9 @@
void BaseTest::OnCallsCreated(Call* sender_call, Call* receiver_call) {
}
+void BaseTest::OnTransportsCreated(PacketTransport* send_transport,
+ PacketTransport* receive_transport) {}
+
size_t BaseTest::GetNumStreams() const {
return 1;
}
@@ -223,11 +230,6 @@
SendTest::SendTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
}
-SendTest::SendTest(unsigned int timeout_ms,
- const FakeNetworkPipe::Config& config)
- : BaseTest(timeout_ms, config) {
-}
-
bool SendTest::ShouldCreateReceivers() const {
return false;
}
@@ -235,11 +237,6 @@
EndToEndTest::EndToEndTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
}
-EndToEndTest::EndToEndTest(unsigned int timeout_ms,
- const FakeNetworkPipe::Config& config)
- : BaseTest(timeout_ms, config) {
-}
-
bool EndToEndTest::ShouldCreateReceivers() const {
return true;
}