Chromium Code Reviews| Index: media/filters/chunk_demuxer_unittest.cc |
| diff --git a/media/filters/chunk_demuxer_unittest.cc b/media/filters/chunk_demuxer_unittest.cc |
| index 99299ac305dd0f346d3862b44188b8740a6cbb26..93cec328d2c92ed1107c4368cd049bfc3598ae40 100644 |
| --- a/media/filters/chunk_demuxer_unittest.cc |
| +++ b/media/filters/chunk_demuxer_unittest.cc |
| @@ -3412,6 +3412,19 @@ TEST_F(ChunkDemuxerTest, GCDuringSeek) { |
| CheckExpectedRanges(kSourceId, "{ [500,615) [700,815) }"); |
| } |
| +TEST_F(ChunkDemuxerTest, GCDuringSeekBack) { |
| + ASSERT_TRUE(InitDemuxer(HAS_AUDIO)); |
| + demuxer_->SetMemoryLimits(DemuxerStream::AUDIO, 10 * kBlockSize); |
| + // Append some data at position 1000ms |
| + AppendSingleStreamCluster(kSourceId, kAudioTrackNum, 1000, 10); |
| + CheckExpectedRanges(kSourceId, "{ [1000,1230) }"); |
| + |
| + // GC should be able to evict frames in the currently buffered range, since |
| + // those frames are later than the seek target position 0. |
| + base::TimeDelta seek_time = base::TimeDelta::FromMilliseconds(0); |
| + EXPECT_TRUE(demuxer_->EvictCodedFrames(kSourceId, seek_time, 5 * kBlockSize)); |
|
wolenetz
2015/09/16 19:25:27
nit: We could do a further check of expectation he
|
| +} |
| + |
| TEST_F(ChunkDemuxerTest, GCKeepPlayhead) { |
| ASSERT_TRUE(InitDemuxer(HAS_AUDIO)); |