Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1183)

Unified Diff: media/base/decoder_buffer_queue_unittest.cc

Issue 164233005: Cap the memory usage in FFMpegDemuxer. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Revert to IsMaxMemoryUsage api style in FFMpegDemuxer. Created 6 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
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

Powered by Google App Engine
This is Rietveld 408576698