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

Unified Diff: media/base/pipeline_impl_unittest.cc

Issue 2782004: Added checks to GetBufferedTime() to cap at the media's duration (Closed)
Patch Set: Fixed nits from code review Created 10 years, 6 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
« no previous file with comments | « media/base/pipeline_impl.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/base/pipeline_impl_unittest.cc
diff --git a/media/base/pipeline_impl_unittest.cc b/media/base/pipeline_impl_unittest.cc
index 25f4f3f7ee7fc0a4ff7d8d0408d7571208f3ec55..718b3efc21d3fd7eb68e0b819a2719ac19bc0476 100644
--- a/media/base/pipeline_impl_unittest.cc
+++ b/media/base/pipeline_impl_unittest.cc
@@ -502,6 +502,42 @@ TEST_F(PipelineImplTest, Properties) {
pipeline_->GetBufferedTime().ToInternalValue());
}
+TEST_F(PipelineImplTest, GetBufferedTime) {
+ CreateVideoStream();
+ MockDemuxerStreamVector streams;
+ streams.push_back(video_stream());
+
+ InitializeDataSource();
+ const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100);
+ InitializeDemuxer(&streams, kDuration);
+ InitializeVideoDecoder(video_stream());
+ InitializeVideoRenderer();
+
+ InitializePipeline();
+ EXPECT_TRUE(pipeline_->IsInitialized());
+ EXPECT_EQ(PIPELINE_OK, pipeline_->GetError());
+
+ // If media is loaded, we should return duration of media.
+ pipeline_->SetLoaded(true);
+ EXPECT_EQ(kDuration.ToInternalValue(),
+ pipeline_->GetBufferedTime().ToInternalValue());
+ pipeline_->SetLoaded(false);
+
+ // Buffered time is 0 if no bytes are buffered or read.
+ pipeline_->SetBufferedBytes(0);
+ EXPECT_EQ(0, pipeline_->GetBufferedTime().ToInternalValue());
+ pipeline_->SetBufferedBytes(kBufferedBytes);
+
+ pipeline_->SetCurrentReadPosition(0);
+ EXPECT_EQ(0, pipeline_->GetBufferedTime().ToInternalValue());
+
+ // We should return buffered_time_ if it is set and valid.
+ const base::TimeDelta buffered = base::TimeDelta::FromSeconds(10);
+ pipeline_->SetBufferedTime(buffered);
+ EXPECT_EQ(buffered.ToInternalValue(),
+ pipeline_->GetBufferedTime().ToInternalValue());
+}
+
TEST_F(PipelineImplTest, DisableAudioRenderer) {
CreateAudioStream();
CreateVideoStream();
« no previous file with comments | « media/base/pipeline_impl.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698