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

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: Comments addresded. 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
« no previous file with comments | « webrtc/test/call_test.h ('k') | webrtc/test/direct_transport.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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->OnTransportsCreated(send_transport_.get(), receive_transport_.get());
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 }
200 204
201 void BaseTest::OnCallsCreated(Call* sender_call, Call* receiver_call) { 205 void BaseTest::OnCallsCreated(Call* sender_call, Call* receiver_call) {
202 } 206 }
203 207
208 void BaseTest::OnTransportsCreated(PacketTransport* send_transport,
209 PacketTransport* receive_transport) {}
210
204 size_t BaseTest::GetNumStreams() const { 211 size_t BaseTest::GetNumStreams() const {
205 return 1; 212 return 1;
206 } 213 }
207 214
208 void BaseTest::ModifyConfigs( 215 void BaseTest::ModifyConfigs(
209 VideoSendStream::Config* send_config, 216 VideoSendStream::Config* send_config,
210 std::vector<VideoReceiveStream::Config>* receive_configs, 217 std::vector<VideoReceiveStream::Config>* receive_configs,
211 VideoEncoderConfig* encoder_config) { 218 VideoEncoderConfig* encoder_config) {
212 } 219 }
213 220
214 void BaseTest::OnStreamsCreated( 221 void BaseTest::OnStreamsCreated(
215 VideoSendStream* send_stream, 222 VideoSendStream* send_stream,
216 const std::vector<VideoReceiveStream*>& receive_streams) { 223 const std::vector<VideoReceiveStream*>& receive_streams) {
217 } 224 }
218 225
219 void BaseTest::OnFrameGeneratorCapturerCreated( 226 void BaseTest::OnFrameGeneratorCapturerCreated(
220 FrameGeneratorCapturer* frame_generator_capturer) { 227 FrameGeneratorCapturer* frame_generator_capturer) {
221 } 228 }
222 229
223 SendTest::SendTest(unsigned int timeout_ms) : BaseTest(timeout_ms) { 230 SendTest::SendTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
224 } 231 }
225 232
226 SendTest::SendTest(unsigned int timeout_ms,
227 const FakeNetworkPipe::Config& config)
228 : BaseTest(timeout_ms, config) {
229 }
230
231 bool SendTest::ShouldCreateReceivers() const { 233 bool SendTest::ShouldCreateReceivers() const {
232 return false; 234 return false;
233 } 235 }
234 236
235 EndToEndTest::EndToEndTest(unsigned int timeout_ms) : BaseTest(timeout_ms) { 237 EndToEndTest::EndToEndTest(unsigned int timeout_ms) : BaseTest(timeout_ms) {
236 } 238 }
237 239
238 EndToEndTest::EndToEndTest(unsigned int timeout_ms,
239 const FakeNetworkPipe::Config& config)
240 : BaseTest(timeout_ms, config) {
241 }
242
243 bool EndToEndTest::ShouldCreateReceivers() const { 240 bool EndToEndTest::ShouldCreateReceivers() const {
244 return true; 241 return true;
245 } 242 }
246 243
247 } // namespace test 244 } // namespace test
248 } // namespace webrtc 245 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/test/call_test.h ('k') | webrtc/test/direct_transport.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698