| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "base/memory/scoped_ptr.h" | 5 #include "base/memory/scoped_ptr.h" |
| 6 #include "base/test/simple_test_tick_clock.h" | 6 #include "base/test/simple_test_tick_clock.h" |
| 7 #include "media/cast/cast_environment.h" | 7 #include "media/cast/cast_environment.h" |
| 8 #include "media/cast/net/cast_transport_defines.h" | 8 #include "media/cast/net/cast_transport_defines.h" |
| 9 #include "media/cast/net/rtcp/rtcp_utility.h" | 9 #include "media/cast/net/rtcp/rtcp_utility.h" |
| 10 #include "media/cast/net/rtcp/test_rtcp_packet_builder.h" | 10 #include "media/cast/net/rtcp/test_rtcp_packet_builder.h" |
| (...skipping 349 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 360 p.AddReceiverEventLog(kLostPacketId2, PACKET_RECEIVED, kTimeDelayMs); | 360 p.AddReceiverEventLog(kLostPacketId2, PACKET_RECEIVED, kTimeDelayMs); |
| 361 | 361 |
| 362 RtcpParser parser(kSourceSsrc, kSenderSsrc); | 362 RtcpParser parser(kSourceSsrc, kSenderSsrc); |
| 363 EXPECT_TRUE(parser.Parse(p.Reader())); | 363 EXPECT_TRUE(parser.Parse(p.Reader())); |
| 364 ExpectReceiverLog(parser, receiver_log); | 364 ExpectReceiverLog(parser, receiver_log); |
| 365 } | 365 } |
| 366 | 366 |
| 367 TEST_F(RtcpParserTest, InjectReceiverReportWithReceiverLogVerificationMulti) { | 367 TEST_F(RtcpParserTest, InjectReceiverReportWithReceiverLogVerificationMulti) { |
| 368 static const uint32 kTimeBaseMs = 12345678; | 368 static const uint32 kTimeBaseMs = 12345678; |
| 369 static const uint32 kTimeDelayMs = 10; | 369 static const uint32 kTimeDelayMs = 10; |
| 370 static const uint32 kDelayDeltaMs = 123; | 370 static const int kDelayDeltaMs = 123; // To be varied for every frame. |
| 371 base::SimpleTestTickClock testing_clock; | 371 base::SimpleTestTickClock testing_clock; |
| 372 testing_clock.Advance(base::TimeDelta::FromMilliseconds(kTimeBaseMs)); | 372 testing_clock.Advance(base::TimeDelta::FromMilliseconds(kTimeBaseMs)); |
| 373 | 373 |
| 374 RtcpReceiverLogMessage receiver_log; | 374 RtcpReceiverLogMessage receiver_log; |
| 375 | 375 |
| 376 for (int j = 0; j < 100; ++j) { | 376 for (int j = 0; j < 100; ++j) { |
| 377 RtcpReceiverFrameLogMessage frame_log(kRtpTimestamp); | 377 RtcpReceiverFrameLogMessage frame_log(kRtpTimestamp); |
| 378 RtcpReceiverEventLogMessage event_log; | 378 RtcpReceiverEventLogMessage event_log; |
| 379 event_log.type = FRAME_ACK_SENT; | 379 event_log.type = FRAME_ACK_SENT; |
| 380 event_log.event_timestamp = testing_clock.NowTicks(); | 380 event_log.event_timestamp = testing_clock.NowTicks(); |
| 381 event_log.delay_delta = base::TimeDelta::FromMilliseconds(kDelayDeltaMs); | 381 event_log.delay_delta = |
| 382 base::TimeDelta::FromMilliseconds((j - 50) * kDelayDeltaMs); |
| 382 frame_log.event_log_messages_.push_back(event_log); | 383 frame_log.event_log_messages_.push_back(event_log); |
| 383 receiver_log.push_back(frame_log); | 384 receiver_log.push_back(frame_log); |
| 384 testing_clock.Advance(base::TimeDelta::FromMilliseconds(kTimeDelayMs)); | 385 testing_clock.Advance(base::TimeDelta::FromMilliseconds(kTimeDelayMs)); |
| 385 } | 386 } |
| 386 | 387 |
| 387 TestRtcpPacketBuilder p; | 388 TestRtcpPacketBuilder p; |
| 388 p.AddRr(kSenderSsrc, 1); | 389 p.AddRr(kSenderSsrc, 1); |
| 389 p.AddRb(kSourceSsrc); | 390 p.AddRb(kSourceSsrc); |
| 390 p.AddReceiverLog(kSenderSsrc); | 391 p.AddReceiverLog(kSenderSsrc); |
| 391 for (int i = 0; i < 100; ++i) { | 392 for (int i = 0; i < 100; ++i) { |
| 392 p.AddReceiverFrameLog(kRtpTimestamp, 1, kTimeBaseMs + i * kTimeDelayMs); | 393 p.AddReceiverFrameLog(kRtpTimestamp, 1, kTimeBaseMs + i * kTimeDelayMs); |
| 393 p.AddReceiverEventLog(kDelayDeltaMs, FRAME_ACK_SENT, 0); | 394 const int delay = (i - 50) * kDelayDeltaMs; |
| 395 p.AddReceiverEventLog(static_cast<uint16>(delay), FRAME_ACK_SENT, 0); |
| 394 } | 396 } |
| 395 | 397 |
| 396 RtcpParser parser(kSourceSsrc, kSenderSsrc); | 398 RtcpParser parser(kSourceSsrc, kSenderSsrc); |
| 397 EXPECT_TRUE(parser.Parse(p.Reader())); | 399 EXPECT_TRUE(parser.Parse(p.Reader())); |
| 398 ExpectReceiverLog(parser, receiver_log); | 400 ExpectReceiverLog(parser, receiver_log); |
| 399 } | 401 } |
| 400 | 402 |
| 401 } // namespace cast | 403 } // namespace cast |
| 402 } // namespace media | 404 } // namespace media |
| OLD | NEW |