| Index: media/filters/source_buffer_stream_unittest.cc
|
| diff --git a/media/filters/source_buffer_stream_unittest.cc b/media/filters/source_buffer_stream_unittest.cc
|
| index b706fb18cbbe70482a1a2d2b169672a0f76d7105..50efdacd4f2bdd93007bec10bec8070bd9096095 100644
|
| --- a/media/filters/source_buffer_stream_unittest.cc
|
| +++ b/media/filters/source_buffer_stream_unittest.cc
|
| @@ -3562,6 +3562,36 @@ TEST_F(SourceBufferStreamTest,
|
| CheckExpectedBuffers("90K 121 151");
|
| }
|
|
|
| +TEST_F(SourceBufferStreamTest, Remove_GapAtBeginningOfMediaSegment) {
|
| + Seek(0);
|
| +
|
| + // Append a media segment that has a gap at the beginning of it.
|
| + NewSegmentAppend(base::TimeDelta::FromMilliseconds(0),
|
| + "30K 60 90 120K 150");
|
| + CheckExpectedRangesByTimestamp("{ [0,180) }");
|
| +
|
| + // Remove the gap that doesn't contain any buffers.
|
| + RemoveInMs(0, 10, 180);
|
| + CheckExpectedRangesByTimestamp("{ [10,180) }");
|
| +
|
| + // Verify we still get the first buffer still since only part of
|
| + // the gap was removed.
|
| + // TODO(acolwell/wolenetz): Consider not returning a buffer at this
|
| + // point since the current seek position has been explicitly
|
| + // removed but didn't happen to remove any buffers.
|
| + // http://crbug.com/384016
|
| + CheckExpectedBuffers("30K");
|
| +
|
| + // Remove a range that includes the first GOP.
|
| + RemoveInMs(0, 60, 180);
|
| +
|
| + // Verify that no buffer is returned because the current buffer
|
| + // position has been removed.
|
| + CheckNoNextBuffer();
|
| +
|
| + CheckExpectedRangesByTimestamp("{ [120,180) }");
|
| +}
|
| +
|
| TEST_F(SourceBufferStreamTest, Text_Append_SingleRange) {
|
| SetTextStream();
|
| NewSegmentAppend("0K 500K 1000K");
|
|
|