Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(454)

Side by Side Diff: webrtc/test/call_test.cc

Issue 1419193002: Call OnSentPacket for all packets sent in the test framework. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: . Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 #include "webrtc/test/call_test.h" 10 #include "webrtc/test/call_test.h"
11 #include "webrtc/test/encoder_settings.h" 11 #include "webrtc/test/encoder_settings.h"
12 12
13 namespace webrtc { 13 namespace webrtc {
14 namespace test { 14 namespace test {
15 15
16 namespace { 16 namespace {
17 const int kVideoRotationRtpExtensionId = 4; 17 const int kVideoRotationRtpExtensionId = 4;
18 } 18 }
19 19
20 CallTest::CallTest() 20 CallTest::CallTest()
21 : clock_(Clock::GetRealTimeClock()), 21 : clock_(Clock::GetRealTimeClock()),
22 send_config_(nullptr), 22 send_config_(nullptr),
23 send_stream_(NULL), 23 send_stream_(NULL),
24 fake_encoder_(clock_) { 24 fake_encoder_(clock_) {
25 } 25 }
26 26
27 CallTest::~CallTest() { 27 CallTest::~CallTest() {
28 } 28 }
29 29
30 void CallTest::RunBaseTest(BaseTest* test) { 30 void CallTest::RunBaseTest(BaseTest* test,
31 const FakeNetworkPipe::Config& config) {
31 CreateSenderCall(test->GetSenderCallConfig()); 32 CreateSenderCall(test->GetSenderCallConfig());
32 if (test->ShouldCreateReceivers()) 33 if (test->ShouldCreateReceivers())
33 CreateReceiverCall(test->GetReceiverCallConfig()); 34 CreateReceiverCall(test->GetReceiverCallConfig());
35 send_transport_.reset(new PacketTransport(
36 sender_call_.get(), test, test::PacketTransport::kSender, config));
37 receive_transport_.reset(new PacketTransport(
38 nullptr, test, test::PacketTransport::kReceiver, config));
39 test->SetTransports(send_transport_.get(), receive_transport_.get());
pbos-webrtc 2015/10/27 14:06:29 Comment on why this one is needed (I assume it's n
stefan-webrtc 2015/10/27 14:33:16 Done.
34 test->OnCallsCreated(sender_call_.get(), receiver_call_.get()); 40 test->OnCallsCreated(sender_call_.get(), receiver_call_.get());
35 41
36 if (test->ShouldCreateReceivers()) { 42 if (test->ShouldCreateReceivers()) {
37 test->SetReceivers(receiver_call_->Receiver(), sender_call_->Receiver()); 43 send_transport_->SetReceiver(receiver_call_->Receiver());
44 receive_transport_->SetReceiver(sender_call_->Receiver());
38 } else { 45 } else {
39 // Sender-only call delivers to itself. 46 // Sender-only call delivers to itself.
40 test->SetReceivers(sender_call_->Receiver(), NULL); 47 send_transport_->SetReceiver(sender_call_->Receiver());
48 receive_transport_->SetReceiver(nullptr);
41 } 49 }
42 50
43 CreateSendConfig(test->GetNumStreams(), test->SendTransport()); 51 CreateSendConfig(test->GetNumStreams(), send_transport_.get());
44 if (test->ShouldCreateReceivers()) { 52 if (test->ShouldCreateReceivers()) {
45 CreateMatchingReceiveConfigs(test->ReceiveTransport()); 53 CreateMatchingReceiveConfigs(receive_transport_.get());
46 } 54 }
47 test->ModifyConfigs(&send_config_, &receive_configs_, &encoder_config_); 55 test->ModifyConfigs(&send_config_, &receive_configs_, &encoder_config_);
48 CreateStreams(); 56 CreateStreams();
49 test->OnStreamsCreated(send_stream_, receive_streams_); 57 test->OnStreamsCreated(send_stream_, receive_streams_);
50 58
51 CreateFrameGeneratorCapturer(); 59 CreateFrameGeneratorCapturer();
52 test->OnFrameGeneratorCapturerCreated(frame_generator_capturer_.get()); 60 test->OnFrameGeneratorCapturerCreated(frame_generator_capturer_.get());
53 61
54 Start(); 62 Start();
55 test->PerformTest(); 63 test->PerformTest();
56 test->StopSending(); 64 send_transport_->StopSending();
65 receive_transport_->StopSending();
57 Stop(); 66 Stop();
58 67
59 DestroyStreams(); 68 DestroyStreams();
60 } 69 }
61 70
62 void CallTest::Start() { 71 void CallTest::Start() {
63 send_stream_->Start(); 72 send_stream_->Start();
64 for (size_t i = 0; i < receive_streams_.size(); ++i) 73 for (size_t i = 0; i < receive_streams_.size(); ++i)
65 receive_streams_[i]->Start(); 74 receive_streams_[i]->Start();
66 if (frame_generator_capturer_.get() != NULL) 75 if (frame_generator_capturer_.get() != NULL)
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 const uint32_t CallTest::kSendRtxSsrcs[kNumSsrcs] = {0xBADCAFD, 0xBADCAFE, 184 const uint32_t CallTest::kSendRtxSsrcs[kNumSsrcs] = {0xBADCAFD, 0xBADCAFE,
176 0xBADCAFF}; 185 0xBADCAFF};
177 const uint32_t CallTest::kSendSsrcs[kNumSsrcs] = {0xC0FFED, 0xC0FFEE, 0xC0FFEF}; 186 const uint32_t CallTest::kSendSsrcs[kNumSsrcs] = {0xC0FFED, 0xC0FFEE, 0xC0FFEF};
178 const uint32_t CallTest::kReceiverLocalSsrc = 0x123456; 187 const uint32_t CallTest::kReceiverLocalSsrc = 0x123456;
179 const int CallTest::kNackRtpHistoryMs = 1000; 188 const int CallTest::kNackRtpHistoryMs = 1000;
180 const int CallTest::kAbsSendTimeExtensionId = 7; 189 const int CallTest::kAbsSendTimeExtensionId = 7;
181 190
182 BaseTest::BaseTest(unsigned int timeout_ms) : RtpRtcpObserver(timeout_ms) { 191 BaseTest::BaseTest(unsigned int timeout_ms) : RtpRtcpObserver(timeout_ms) {
183 } 192 }
184 193
185 BaseTest::BaseTest(unsigned int timeout_ms,
186 const FakeNetworkPipe::Config& config)
187 : RtpRtcpObserver(timeout_ms, config) {
188 }
189
190 BaseTest::~BaseTest() { 194 BaseTest::~BaseTest() {
191 } 195 }
192 196
193 Call::Config BaseTest::GetSenderCallConfig() { 197 Call::Config BaseTest::GetSenderCallConfig() {
194 return Call::Config(); 198 return Call::Config();
195 } 199 }
196 200
197 Call::Config BaseTest::GetReceiverCallConfig() { 201 Call::Config BaseTest::GetReceiverCallConfig() {
198 return Call::Config(); 202 return Call::Config();
199 } 203 }
(...skipping 16 matching lines...) Expand all
216 const std::vector<VideoReceiveStream*>& receive_streams) { 220 const std::vector<VideoReceiveStream*>& receive_streams) {
217 } 221 }
218 222
219 void BaseTest::OnFrameGeneratorCapturerCreated( 223 void BaseTest::OnFrameGeneratorCapturerCreated(
220 FrameGeneratorCapturer* frame_generator_capturer) { 224 FrameGeneratorCapturer* frame_generator_capturer) {
221 } 225 }
222 226
223 SendTest::SendTest(unsigned int timeout_ms) : BaseTest(timeout_ms) { 227 SendTest::SendTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
224 } 228 }
225 229
226 SendTest::SendTest(unsigned int timeout_ms,
227 const FakeNetworkPipe::Config& config)
228 : BaseTest(timeout_ms, config) {
229 }
230
231 bool SendTest::ShouldCreateReceivers() const { 230 bool SendTest::ShouldCreateReceivers() const {
232 return false; 231 return false;
233 } 232 }
234 233
235 EndToEndTest::EndToEndTest(unsigned int timeout_ms) : BaseTest(timeout_ms) { 234 EndToEndTest::EndToEndTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
236 } 235 }
237 236
238 EndToEndTest::EndToEndTest(unsigned int timeout_ms,
239 const FakeNetworkPipe::Config& config)
240 : BaseTest(timeout_ms, config) {
241 }
242
243 bool EndToEndTest::ShouldCreateReceivers() const { 237 bool EndToEndTest::ShouldCreateReceivers() const {
244 return true; 238 return true;
245 } 239 }
246 240
247 } // namespace test 241 } // namespace test
248 } // namespace webrtc 242 } // namespace webrtc
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698