Chromium Code Reviews| Index: media/base/pipeline_unittest.cc |
| diff --git a/media/base/pipeline_unittest.cc b/media/base/pipeline_unittest.cc |
| index 41d670458b466e9662aa318b0e534278cca71bfc..2f7dc1d748b8ccdd00e981ee4d815048e72c19d6 100644 |
| --- a/media/base/pipeline_unittest.cc |
| +++ b/media/base/pipeline_unittest.cc |
| @@ -105,8 +105,8 @@ class PipelineTest : public ::testing::Test { |
| scoped_ptr<TextRenderer> text_renderer(text_renderer_); |
| filter_collection_->SetTextRenderer(text_renderer.Pass()); |
| - // InitializeDemuxer() adds overriding expectations for expected non-NULL |
| - // streams. |
| + // ExpectToInitializeDemuxer() adds overriding expectations for expected |
| + // non-NULL streams. |
| DemuxerStream* null_pointer = NULL; |
| EXPECT_CALL(*demuxer_, GetStream(_)) |
| .WillRepeatedly(Return(null_pointer)); |
| @@ -141,7 +141,7 @@ class PipelineTest : public ::testing::Test { |
| protected: |
| // Sets up expectations to allow the demuxer to initialize. |
| typedef std::vector<MockDemuxerStream*> MockDemuxerStreamVector; |
| - void InitializeDemuxer(MockDemuxerStreamVector* streams, |
| + void ExpectToInitializeDemuxer(MockDemuxerStreamVector* streams, |
|
scherkus (not reviewing)
2014/07/11 19:22:52
suggestion: in the PipelineTeardownTests I used "S
xhwang
2014/07/11 20:36:04
Done.
|
| const base::TimeDelta& duration) { |
| EXPECT_CALL(callbacks_, OnDurationChange()); |
| EXPECT_CALL(*demuxer_, Initialize(_, _, _)) |
| @@ -156,9 +156,9 @@ class PipelineTest : public ::testing::Test { |
| } |
| } |
| - void InitializeDemuxer(MockDemuxerStreamVector* streams) { |
| + void ExpectToInitializeDemuxer(MockDemuxerStreamVector* streams) { |
| // Initialize with a default non-zero duration. |
| - InitializeDemuxer(streams, base::TimeDelta::FromSeconds(10)); |
| + ExpectToInitializeDemuxer(streams, base::TimeDelta::FromSeconds(10)); |
| } |
| scoped_ptr<StrictMock<MockDemuxerStream> > CreateStream( |
| @@ -169,17 +169,19 @@ class PipelineTest : public ::testing::Test { |
| } |
| // Sets up expectations to allow the video renderer to initialize. |
| - void InitializeVideoRenderer(DemuxerStream* stream) { |
| + void ExpectToInitializeVideoRenderer(DemuxerStream* stream) { |
| EXPECT_CALL(*video_renderer_, Initialize(stream, _, _, _, _, _, _, _, _, _)) |
| .WillOnce(DoAll(SaveArg<5>(&video_buffering_state_cb_), |
| + SaveArg<6>(&video_ended_cb_), |
| RunCallback<2>(PIPELINE_OK))); |
| } |
| // Sets up expectations to allow the audio renderer to initialize. |
| - void InitializeAudioRenderer(DemuxerStream* stream) { |
| + void ExpectToInitializeAudioRenderer(DemuxerStream* stream) { |
| EXPECT_CALL(*audio_renderer_, Initialize(stream, _, _, _, _, _, _)) |
| .WillOnce(DoAll(SaveArg<3>(&audio_time_cb_), |
| SaveArg<4>(&audio_buffering_state_cb_), |
| + SaveArg<5>(&audio_ended_cb_), |
| RunCallback<1>(PIPELINE_OK))); |
| } |
| @@ -192,7 +194,7 @@ class PipelineTest : public ::testing::Test { |
| // Sets up expectations on the callback and initializes the pipeline. Called |
| // after tests have set expectations any filters they wish to use. |
| - void InitializePipeline(PipelineStatus start_status) { |
| + void StartPipeline(PipelineStatus start_status) { |
| EXPECT_CALL(callbacks_, OnStart(start_status)); |
| if (start_status == PIPELINE_OK) { |
| @@ -342,6 +344,8 @@ class PipelineTest : public ::testing::Test { |
| AudioRenderer::TimeCB audio_time_cb_; |
| BufferingStateCB audio_buffering_state_cb_; |
| BufferingStateCB video_buffering_state_cb_; |
| + base::Closure audio_ended_cb_; |
| + base::Closure video_ended_cb_; |
| VideoDecoderConfig video_decoder_config_; |
| PipelineMetadata metadata_; |
| @@ -408,7 +412,7 @@ TEST_F(PipelineTest, URLNotFound) { |
| EXPECT_CALL(*demuxer_, Stop(_)) |
| .WillOnce(RunClosure<0>()); |
| - InitializePipeline(PIPELINE_ERROR_URL_NOT_FOUND); |
| + StartPipeline(PIPELINE_ERROR_URL_NOT_FOUND); |
| } |
| TEST_F(PipelineTest, NoStreams) { |
| @@ -417,7 +421,7 @@ TEST_F(PipelineTest, NoStreams) { |
| EXPECT_CALL(*demuxer_, Stop(_)) |
| .WillOnce(RunClosure<0>()); |
| - InitializePipeline(PIPELINE_ERROR_COULD_NOT_RENDER); |
| + StartPipeline(PIPELINE_ERROR_COULD_NOT_RENDER); |
| } |
| TEST_F(PipelineTest, AudioStream) { |
| @@ -425,10 +429,10 @@ TEST_F(PipelineTest, AudioStream) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_TRUE(metadata_.has_audio); |
| EXPECT_FALSE(metadata_.has_video); |
| } |
| @@ -438,10 +442,10 @@ TEST_F(PipelineTest, VideoStream) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_FALSE(metadata_.has_audio); |
| EXPECT_TRUE(metadata_.has_video); |
| } |
| @@ -453,11 +457,11 @@ TEST_F(PipelineTest, AudioVideoStream) { |
| streams.push_back(audio_stream()); |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_TRUE(metadata_.has_audio); |
| EXPECT_TRUE(metadata_.has_video); |
| } |
| @@ -468,10 +472,10 @@ TEST_F(PipelineTest, VideoTextStream) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_FALSE(metadata_.has_audio); |
| EXPECT_TRUE(metadata_.has_video); |
| @@ -487,11 +491,11 @@ TEST_F(PipelineTest, VideoAudioTextStream) { |
| streams.push_back(video_stream()); |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeVideoRenderer(video_stream()); |
| - InitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_TRUE(metadata_.has_audio); |
| EXPECT_TRUE(metadata_.has_video); |
| @@ -507,12 +511,12 @@ TEST_F(PipelineTest, Seek) { |
| streams.push_back(audio_stream()); |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams, base::TimeDelta::FromSeconds(3000)); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams, base::TimeDelta::FromSeconds(3000)); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| // Initialize then seek! |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| message_loop_.RunUntilIdle(); |
| @@ -527,15 +531,15 @@ TEST_F(PipelineTest, SetVolume) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| // The audio renderer should receive a call to SetVolume(). |
| float expected = 0.5f; |
| EXPECT_CALL(*audio_renderer_, SetVolume(expected)); |
| // Initialize then set volume! |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| pipeline_->SetVolume(expected); |
| } |
| @@ -545,10 +549,10 @@ TEST_F(PipelineTest, Properties) { |
| streams.push_back(video_stream()); |
| const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100); |
| - InitializeDemuxer(&streams, kDuration); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams, kDuration); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_EQ(kDuration.ToInternalValue(), |
| pipeline_->GetMediaDuration().ToInternalValue()); |
| EXPECT_FALSE(pipeline_->DidLoadingProgress()); |
| @@ -560,10 +564,10 @@ TEST_F(PipelineTest, GetBufferedTimeRanges) { |
| streams.push_back(video_stream()); |
| const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100); |
| - InitializeDemuxer(&streams, kDuration); |
| - InitializeVideoRenderer(video_stream()); |
| + ExpectToInitializeDemuxer(&streams, kDuration); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_EQ(0u, pipeline_->GetBufferedTimeRanges().size()); |
| @@ -590,18 +594,18 @@ TEST_F(PipelineTest, EndedCallback) { |
| streams.push_back(audio_stream()); |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| + StartPipeline(PIPELINE_OK); |
| AddTextStream(); |
| // The ended callback shouldn't run until all renderers have ended. |
| - pipeline_->OnAudioRendererEnded(); |
| + audio_ended_cb_.Run(); |
| message_loop_.RunUntilIdle(); |
| - pipeline_->OnVideoRendererEnded(); |
| + video_ended_cb_.Run(); |
| message_loop_.RunUntilIdle(); |
| EXPECT_CALL(*audio_renderer_, StopRendering()); |
| @@ -623,10 +627,10 @@ TEST_F(PipelineTest, AudioStreamShorterThanVideo) { |
| pipeline_->SetTimeDeltaInterpolatorForTesting( |
| new TimeDeltaInterpolator(&test_tick_clock_)); |
| - InitializeDemuxer(&streams, duration); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams, duration); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| + StartPipeline(PIPELINE_OK); |
| EXPECT_EQ(0, pipeline_->GetMediaTime().ToInternalValue()); |
| @@ -645,7 +649,7 @@ TEST_F(PipelineTest, AudioStreamShorterThanVideo) { |
| EXPECT_EQ(pipeline_->GetMediaTime().ToInternalValue(), start_time); |
| // Signal end of audio stream. |
| - pipeline_->OnAudioRendererEnded(); |
| + audio_ended_cb_.Run(); |
| message_loop_.RunUntilIdle(); |
| // Verify that the clock advances. |
| @@ -656,7 +660,7 @@ TEST_F(PipelineTest, AudioStreamShorterThanVideo) { |
| // Signal end of video stream and make sure OnEnded() callback occurs. |
| EXPECT_CALL(*audio_renderer_, StopRendering()); |
| EXPECT_CALL(callbacks_, OnEnded()); |
| - pipeline_->OnVideoRendererEnded(); |
| + video_ended_cb_.Run(); |
| } |
| TEST_F(PipelineTest, ErrorDuringSeek) { |
| @@ -664,9 +668,9 @@ TEST_F(PipelineTest, ErrorDuringSeek) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + StartPipeline(PIPELINE_OK); |
| float playback_rate = 1.0f; |
| EXPECT_CALL(*audio_renderer_, SetPlaybackRate(playback_rate)); |
| @@ -719,9 +723,9 @@ TEST_F(PipelineTest, NoMessageDuringTearDownFromError) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + StartPipeline(PIPELINE_OK); |
| // Trigger additional requests on the pipeline during tear down from error. |
| base::Callback<void(PipelineStatus)> cb = base::Bind( |
| @@ -763,9 +767,9 @@ TEST_F(PipelineTest, AudioTimeUpdateDuringSeek) { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + StartPipeline(PIPELINE_OK); |
| float playback_rate = 1.0f; |
| EXPECT_CALL(*audio_renderer_, SetPlaybackRate(playback_rate)); |
| @@ -821,9 +825,9 @@ TEST_F(PipelineTest, DeleteAfterStop) { |
| CreateAudioStream(); |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + StartPipeline(PIPELINE_OK); |
| ExpectStop(); |
| @@ -839,10 +843,10 @@ TEST_F(PipelineTest, Underflow) { |
| streams.push_back(audio_stream()); |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams); |
| - InitializeAudioRenderer(audio_stream()); |
| - InitializeVideoRenderer(video_stream()); |
| - InitializePipeline(PIPELINE_OK); |
| + ExpectToInitializeDemuxer(&streams); |
| + ExpectToInitializeAudioRenderer(audio_stream()); |
| + ExpectToInitializeVideoRenderer(video_stream()); |
| + StartPipeline(PIPELINE_OK); |
| // Simulate underflow. |
| EXPECT_CALL(*audio_renderer_, StopRendering()); |
| @@ -944,7 +948,7 @@ class PipelineTeardownTest : public PipelineTest { |
| MockDemuxerStreamVector streams; |
| streams.push_back(audio_stream()); |
| streams.push_back(video_stream()); |
| - InitializeDemuxer(&streams, base::TimeDelta::FromSeconds(3000)); |
| + ExpectToInitializeDemuxer(&streams, base::TimeDelta::FromSeconds(3000)); |
| if (state == kInitAudioRenderer) { |
| if (stop_or_error == kStop) { |