Chromium Code Reviews| Index: media/base/decoder_buffer_queue_unittest.cc |
| diff --git a/media/base/decoder_buffer_queue_unittest.cc b/media/base/decoder_buffer_queue_unittest.cc |
| index 32e62db06b1dc79a0efbf9e69f337a88b435c643..6453b44dc41910f655041091e61119519c6cff4f 100644 |
| --- a/media/base/decoder_buffer_queue_unittest.cc |
| +++ b/media/base/decoder_buffer_queue_unittest.cc |
| @@ -18,8 +18,8 @@ static base::TimeDelta ToTimeDelta(int seconds) { |
| // Helper to create buffers with specified timestamp in seconds. |
| // |
| // Negative numbers will be converted to kNoTimestamp(); |
| -static scoped_refptr<DecoderBuffer> CreateBuffer(int timestamp) { |
| - scoped_refptr<DecoderBuffer> buffer = new DecoderBuffer(0); |
| +static scoped_refptr<DecoderBuffer> CreateBuffer(int timestamp, int size = 0) { |
|
DaleCurtis
2014/02/19 18:59:25
We don't use defaults in Chromium code.
damienv1
2014/02/19 20:24:33
Done.
|
| + scoped_refptr<DecoderBuffer> buffer = new DecoderBuffer(size); |
| buffer->set_timestamp(ToTimeDelta(timestamp)); |
| buffer->set_duration(ToTimeDelta(0)); |
| return buffer; |
| @@ -135,4 +135,28 @@ TEST(DecoderBufferQueueTest, Duration_NoTimestamp) { |
| EXPECT_EQ(0, queue.Duration().InSeconds()); |
| } |
| +TEST(DecoderBufferQueueTest, DataSize) { |
| + DecoderBufferQueue queue; |
| + EXPECT_EQ(queue.data_size(), 0); |
| + |
| + queue.Push(CreateBuffer(0, 1200)); |
| + EXPECT_EQ(queue.data_size(), 1200); |
| + |
| + queue.Push(CreateBuffer(1, 1000)); |
| + EXPECT_EQ(queue.data_size(), 2200); |
| + |
| + queue.Pop(); |
| + EXPECT_EQ(queue.data_size(), 1000); |
| + |
| + queue.Push(CreateBuffer(2, 999)); |
| + queue.Push(CreateBuffer(3, 999)); |
| + EXPECT_EQ(queue.data_size(), 2998); |
| + |
| + queue.Clear(); |
| + EXPECT_EQ(queue.data_size(), 0); |
| + |
| + queue.Push(CreateBuffer(4, 1400)); |
| + EXPECT_EQ(queue.data_size(), 1400); |
| +} |
| + |
| } // namespace media |