Index: media/base/pipeline_unittest.cc |
diff --git a/media/base/pipeline_unittest.cc b/media/base/pipeline_unittest.cc |
index 7fc0c8e37344489d7e06929c6c836d4999e28544..5b502050611a1a4defc721b77f22c4b929f55166 100644 |
--- a/media/base/pipeline_unittest.cc |
+++ b/media/base/pipeline_unittest.cc |
@@ -54,10 +54,18 @@ ACTION(RunPipelineStatusCB) { |
arg1.Run(PIPELINE_OK); |
} |
+ACTION(RunPipelineStatusCB2) { |
+ arg2.Run(PIPELINE_OK); |
+} |
+ |
ACTION_P(RunPipelineStatusCBWithStatus, status) { |
arg1.Run(status); |
} |
+ACTION_P(RunPipelineStatusCB2WithStatus, status) { |
+ arg2.Run(status); |
+} |
+ |
// Used for setting expectations on pipeline callbacks. Using a StrictMock |
// also lets us test for missing callbacks. |
class CallbackHelper { |
@@ -164,13 +172,6 @@ class PipelineTest : public ::testing::Test { |
return stream; |
} |
- // Sets up expectations to allow the video decoder to initialize. |
- void InitializeVideoDecoder(const scoped_refptr<DemuxerStream>& stream) { |
- EXPECT_CALL(*mocks_->video_decoder(), |
- Initialize(stream, _, _)) |
- .WillOnce(RunPipelineStatusCB()); |
- } |
- |
// Sets up expectations to allow the audio decoder to initialize. |
void InitializeAudioDecoder(const scoped_refptr<DemuxerStream>& stream) { |
EXPECT_CALL(*mocks_->audio_decoder(), Initialize(stream, _, _)) |
@@ -178,11 +179,10 @@ class PipelineTest : public ::testing::Test { |
} |
// Sets up expectations to allow the video renderer to initialize. |
- void InitializeVideoRenderer() { |
+ void InitializeVideoRenderer(const scoped_refptr<DemuxerStream>& stream) { |
EXPECT_CALL(*mocks_->video_renderer(), Initialize( |
- scoped_refptr<VideoDecoder>(mocks_->video_decoder()), |
- _, _, _, _, _, _, _, _)) |
- .WillOnce(RunPipelineStatusCB()); |
+ stream, _, _, _, _, _, _, _, _, _)) |
+ .WillOnce(RunPipelineStatusCB2()); |
EXPECT_CALL(*mocks_->video_renderer(), SetPlaybackRate(0.0f)); |
// Startup sequence. |
@@ -419,8 +419,7 @@ TEST_F(PipelineTest, VideoStream) { |
streams.push_back(video_stream()); |
InitializeDemuxer(&streams); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_FALSE(pipeline_->HasAudio()); |
@@ -437,8 +436,7 @@ TEST_F(PipelineTest, AudioVideoStream) { |
InitializeDemuxer(&streams); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_TRUE(pipeline_->HasAudio()); |
@@ -455,8 +453,7 @@ TEST_F(PipelineTest, Seek) { |
InitializeDemuxer(&streams, base::TimeDelta::FromSeconds(3000)); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
// Initialize then seek! |
InitializePipeline(PIPELINE_OK); |
@@ -492,8 +489,7 @@ TEST_F(PipelineTest, Properties) { |
const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100); |
InitializeDemuxer(&streams, kDuration); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_EQ(kDuration.ToInternalValue(), |
@@ -509,8 +505,7 @@ TEST_F(PipelineTest, GetBufferedTimeRanges) { |
const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100); |
InitializeDemuxer(&streams, kDuration); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
@@ -564,8 +559,7 @@ TEST_F(PipelineTest, DisableAudioRenderer) { |
InitializeDemuxer(&streams); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_TRUE(pipeline_->HasAudio()); |
@@ -589,8 +583,7 @@ TEST_F(PipelineTest, DisableAudioRendererDuringInit) { |
InitializeDemuxer(&streams); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(true); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
EXPECT_CALL(*mocks_->demuxer(), |
OnAudioRendererDisabled()); |
@@ -614,8 +607,7 @@ TEST_F(PipelineTest, EndedCallback) { |
InitializeDemuxer(&streams); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
// The ended callback shouldn't run until both renderers have ended. |
@@ -649,8 +641,7 @@ TEST_F(PipelineTest, AudioStreamShorterThanVideo) { |
InitializeDemuxer(&streams, duration); |
InitializeAudioDecoder(audio_stream()); |
InitializeAudioRenderer(); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_EQ(0, pipeline_->GetMediaTime().ToInternalValue()); |
@@ -786,8 +777,7 @@ TEST_F(PipelineTest, StartTimeIsZero) { |
const base::TimeDelta kDuration = base::TimeDelta::FromSeconds(100); |
InitializeDemuxer(&streams, kDuration); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_FALSE(pipeline_->HasAudio()); |
@@ -808,8 +798,7 @@ TEST_F(PipelineTest, StartTimeIsNonZero) { |
streams.push_back(video_stream()); |
InitializeDemuxer(&streams, kDuration); |
- InitializeVideoDecoder(video_stream()); |
- InitializeVideoRenderer(); |
+ InitializeVideoRenderer(video_stream()); |
InitializePipeline(PIPELINE_OK); |
EXPECT_FALSE(pipeline_->HasAudio()); |
@@ -937,7 +926,6 @@ class PipelineTeardownTest : public PipelineTest { |
kInitDemuxer, |
kInitAudioDecoder, |
kInitAudioRenderer, |
- kInitVideoDecoder, |
kInitVideoRenderer, |
kPausing, |
kFlushing, |
@@ -960,7 +948,6 @@ class PipelineTeardownTest : public PipelineTest { |
case kInitDemuxer: |
case kInitAudioDecoder: |
case kInitAudioRenderer: |
- case kInitVideoDecoder: |
case kInitVideoRenderer: |
DoInitialize(state, stop_or_error); |
break; |
@@ -1080,36 +1067,17 @@ class PipelineTeardownTest : public PipelineTest { |
EXPECT_CALL(*mocks_->audio_renderer(), Initialize(_, _, _, _, _, _, _)) |
.WillOnce(RunPipelineStatusCB()); |
- if (state == kInitVideoDecoder) { |
- if (stop_or_error == kStop) { |
- EXPECT_CALL(*mocks_->video_decoder(), Initialize(_, _, _)) |
- .WillOnce(DoAll(Stop(pipeline_, stop_cb), RunPipelineStatusCB())); |
- EXPECT_CALL(callbacks_, OnStop()); |
- } else { |
- status = PIPELINE_ERROR_DECODE; |
- EXPECT_CALL(*mocks_->video_decoder(), Initialize(_, _, _)) |
- .WillOnce(RunPipelineStatusCBWithStatus(status)); |
- } |
- |
- EXPECT_CALL(*mocks_->demuxer(), Stop(_)).WillOnce(RunClosure()); |
- EXPECT_CALL(*mocks_->audio_renderer(), Stop(_)).WillOnce(RunClosure()); |
- return status; |
- } |
- |
- EXPECT_CALL(*mocks_->video_decoder(), Initialize(_, _, _)) |
- .WillOnce(RunPipelineStatusCB()); |
- |
if (state == kInitVideoRenderer) { |
if (stop_or_error == kStop) { |
EXPECT_CALL(*mocks_->video_renderer(), |
- Initialize(_, _, _, _, _, _, _, _, _)) |
- .WillOnce(DoAll(Stop(pipeline_, stop_cb), RunPipelineStatusCB())); |
+ Initialize(_, _, _, _, _, _, _, _, _, _)) |
+ .WillOnce(DoAll(Stop(pipeline_, stop_cb), RunPipelineStatusCB2())); |
EXPECT_CALL(callbacks_, OnStop()); |
} else { |
status = PIPELINE_ERROR_INITIALIZATION_FAILED; |
EXPECT_CALL(*mocks_->video_renderer(), |
- Initialize(_, _, _, _, _, _, _, _, _)) |
- .WillOnce(RunPipelineStatusCBWithStatus(status)); |
+ Initialize(_, _, _, _, _, _, _, _, _, _)) |
+ .WillOnce(RunPipelineStatusCB2WithStatus(status)); |
} |
EXPECT_CALL(*mocks_->demuxer(), Stop(_)).WillOnce(RunClosure()); |
@@ -1119,8 +1087,8 @@ class PipelineTeardownTest : public PipelineTest { |
} |
EXPECT_CALL(*mocks_->video_renderer(), |
- Initialize(_, _, _, _, _, _, _, _, _)) |
- .WillOnce(RunPipelineStatusCB()); |
+ Initialize(_, _, _, _, _, _, _, _, _, _)) |
+ .WillOnce(RunPipelineStatusCB2()); |
// If we get here it's a successful initialization. |
EXPECT_CALL(*mocks_->demuxer(), SetPlaybackRate(0.0f)); |
@@ -1314,7 +1282,6 @@ class PipelineTeardownTest : public PipelineTest { |
INSTANTIATE_TEARDOWN_TEST(Stop, InitDemuxer); |
INSTANTIATE_TEARDOWN_TEST(Stop, InitAudioDecoder); |
INSTANTIATE_TEARDOWN_TEST(Stop, InitAudioRenderer); |
-INSTANTIATE_TEARDOWN_TEST(Stop, InitVideoDecoder); |
INSTANTIATE_TEARDOWN_TEST(Stop, InitVideoRenderer); |
INSTANTIATE_TEARDOWN_TEST(Stop, Pausing); |
INSTANTIATE_TEARDOWN_TEST(Stop, Flushing); |
@@ -1326,7 +1293,6 @@ INSTANTIATE_TEARDOWN_TEST(Stop, Playing); |
INSTANTIATE_TEARDOWN_TEST(Error, InitDemuxer); |
INSTANTIATE_TEARDOWN_TEST(Error, InitAudioDecoder); |
INSTANTIATE_TEARDOWN_TEST(Error, InitAudioRenderer); |
-INSTANTIATE_TEARDOWN_TEST(Error, InitVideoDecoder); |
INSTANTIATE_TEARDOWN_TEST(Error, InitVideoRenderer); |
INSTANTIATE_TEARDOWN_TEST(Error, Pausing); |
INSTANTIATE_TEARDOWN_TEST(Error, Flushing); |