| Index: media/cast/test/end2end_unittest.cc
|
| diff --git a/media/cast/test/end2end_unittest.cc b/media/cast/test/end2end_unittest.cc
|
| index bfd9faba897a39ddebee9346541e454cdf5f8c2d..fab33f47a6932de5dab53763b67dc3b95984fb26 100644
|
| --- a/media/cast/test/end2end_unittest.cc
|
| +++ b/media/cast/test/end2end_unittest.cc
|
| @@ -1454,6 +1454,39 @@ TEST_F(End2EndTest, EvilNetwork) {
|
| EXPECT_LT((video_ticks_.back().second - test_end).InMilliseconds(), 1000);
|
| }
|
|
|
| +TEST_F(End2EndTest, OldPacketNetwork) {
|
| + Configure(CODEC_VIDEO_FAKE, CODEC_AUDIO_PCM16, 32000, 1);
|
| + sender_to_receiver_.SetPacketPipe(test::NewRandomDrop(0.01));
|
| + scoped_ptr<test::PacketPipe> echo_chamber(
|
| + test::NewDuplicateAndDelay(1, 10 * kFrameTimerMs));
|
| + echo_chamber->AppendToPipe(
|
| + test::NewDuplicateAndDelay(1, 20 * kFrameTimerMs));
|
| + echo_chamber->AppendToPipe(
|
| + test::NewDuplicateAndDelay(1, 40 * kFrameTimerMs));
|
| + echo_chamber->AppendToPipe(
|
| + test::NewDuplicateAndDelay(1, 80 * kFrameTimerMs));
|
| + echo_chamber->AppendToPipe(
|
| + test::NewDuplicateAndDelay(1, 160 * kFrameTimerMs));
|
| +
|
| + receiver_to_sender_.SetPacketPipe(echo_chamber.Pass());
|
| + Create();
|
| + StartBasicPlayer();
|
| +
|
| + SetExpectedVideoPlayoutSmoothness(
|
| + base::TimeDelta::FromMilliseconds(kFrameTimerMs) * 90 / 100,
|
| + base::TimeDelta::FromMilliseconds(kFrameTimerMs) * 110 / 100,
|
| + base::TimeDelta::FromMilliseconds(kFrameTimerMs) / 10);
|
| +
|
| + int frames_counter = 0;
|
| + for (; frames_counter < 10000; ++frames_counter) {
|
| + SendFakeVideoFrame(testing_clock_sender_->NowTicks());
|
| + RunTasks(kFrameTimerMs);
|
| + }
|
| + RunTasks(100 * kFrameTimerMs + 1); // Empty the pipeline.
|
| +
|
| + EXPECT_EQ(10000ul, video_ticks_.size());
|
| +}
|
| +
|
| // TODO(pwestin): Add repeatable packet loss test.
|
| // TODO(pwestin): Add test for misaligned send get calls.
|
| // TODO(pwestin): Add more tests that does not resample.
|
|
|