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

Side by Side Diff: media/base/pipeline_unittest.cc

Issue 1658303002: Create abstract interface for media::Pipeline. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove scoped_ptr pointers. Created 4 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 unified diff | Download patch
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "media/base/pipeline.h" 5 #include "media/base/pipeline.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <utility> 8 #include <utility>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
89 MOCK_METHOD0(OnEnded, void()); 89 MOCK_METHOD0(OnEnded, void());
90 MOCK_METHOD1(OnError, void(PipelineStatus)); 90 MOCK_METHOD1(OnError, void(PipelineStatus));
91 MOCK_METHOD1(OnMetadata, void(PipelineMetadata)); 91 MOCK_METHOD1(OnMetadata, void(PipelineMetadata));
92 MOCK_METHOD1(OnBufferingStateChange, void(BufferingState)); 92 MOCK_METHOD1(OnBufferingStateChange, void(BufferingState));
93 MOCK_METHOD0(OnDurationChange, void()); 93 MOCK_METHOD0(OnDurationChange, void());
94 94
95 private: 95 private:
96 DISALLOW_COPY_AND_ASSIGN(CallbackHelper); 96 DISALLOW_COPY_AND_ASSIGN(CallbackHelper);
97 }; 97 };
98 98
99 PipelineTest() 99 PipelineTest()
xhwang 2016/02/19 17:06:07 Should this be PipelineImplTest?
sandersd (OOO until July 31) 2016/02/22 22:32:57 Done.
100 : pipeline_(new Pipeline(message_loop_.task_runner(), 100 : pipeline_(
101 new MediaLog())), 101 new PipelineImpl(message_loop_.task_runner(), new MediaLog())),
102 demuxer_(new StrictMock<MockDemuxer>()), 102 demuxer_(new StrictMock<MockDemuxer>()),
103 scoped_renderer_(new StrictMock<MockRenderer>()), 103 scoped_renderer_(new StrictMock<MockRenderer>()),
104 renderer_(scoped_renderer_.get()) { 104 renderer_(scoped_renderer_.get()) {
105 // SetDemuxerExpectations() adds overriding expectations for expected 105 // SetDemuxerExpectations() adds overriding expectations for expected
106 // non-NULL streams. 106 // non-NULL streams.
107 DemuxerStream* null_pointer = NULL; 107 DemuxerStream* null_pointer = NULL;
108 EXPECT_CALL(*demuxer_, GetStream(_)) 108 EXPECT_CALL(*demuxer_, GetStream(_))
109 .WillRepeatedly(Return(null_pointer)); 109 .WillRepeatedly(Return(null_pointer));
110 110
111 EXPECT_CALL(*demuxer_, GetTimelineOffset()) 111 EXPECT_CALL(*demuxer_, GetTimelineOffset())
(...skipping 235 matching lines...) Expand 10 before | Expand all | Expand 10 after
347 void DoOnAddTextTrack(const TextTrackConfig& config, 347 void DoOnAddTextTrack(const TextTrackConfig& config,
348 const AddTextTrackDoneCB& done_cb) { 348 const AddTextTrackDoneCB& done_cb) {
349 scoped_ptr<TextTrack> text_track(new MockTextTrack); 349 scoped_ptr<TextTrack> text_track(new MockTextTrack);
350 done_cb.Run(std::move(text_track)); 350 done_cb.Run(std::move(text_track));
351 } 351 }
352 352
353 // Fixture members. 353 // Fixture members.
354 StrictMock<CallbackHelper> callbacks_; 354 StrictMock<CallbackHelper> callbacks_;
355 base::SimpleTestTickClock test_tick_clock_; 355 base::SimpleTestTickClock test_tick_clock_;
356 base::MessageLoop message_loop_; 356 base::MessageLoop message_loop_;
357 scoped_ptr<Pipeline> pipeline_; 357 scoped_ptr<PipelineImpl> pipeline_;
358 358
359 scoped_ptr<StrictMock<MockDemuxer> > demuxer_; 359 scoped_ptr<StrictMock<MockDemuxer> > demuxer_;
360 scoped_ptr<StrictMock<MockRenderer> > scoped_renderer_; 360 scoped_ptr<StrictMock<MockRenderer> > scoped_renderer_;
361 StrictMock<MockRenderer>* renderer_; 361 StrictMock<MockRenderer>* renderer_;
362 StrictMock<CallbackHelper> text_renderer_callbacks_; 362 StrictMock<CallbackHelper> text_renderer_callbacks_;
363 TextRenderer* text_renderer_; 363 TextRenderer* text_renderer_;
364 scoped_ptr<StrictMock<MockDemuxerStream> > audio_stream_; 364 scoped_ptr<StrictMock<MockDemuxerStream> > audio_stream_;
365 scoped_ptr<StrictMock<MockDemuxerStream> > video_stream_; 365 scoped_ptr<StrictMock<MockDemuxerStream> > video_stream_;
366 scoped_ptr<FakeTextTrackStream> text_stream_; 366 scoped_ptr<FakeTextTrackStream> text_stream_;
367 BufferingStateCB buffering_state_cb_; 367 BufferingStateCB buffering_state_cb_;
(...skipping 359 matching lines...) Expand 10 before | Expand all | Expand 10 after
727 EXPECT_CALL(*demuxer_, Stop()); 727 EXPECT_CALL(*demuxer_, Stop());
728 728
729 pipeline_->Seek(seek_time, base::Bind(&CallbackHelper::OnSeek, 729 pipeline_->Seek(seek_time, base::Bind(&CallbackHelper::OnSeek,
730 base::Unretained(&callbacks_))); 730 base::Unretained(&callbacks_)));
731 EXPECT_CALL(callbacks_, OnSeek(PIPELINE_ERROR_READ)); 731 EXPECT_CALL(callbacks_, OnSeek(PIPELINE_ERROR_READ));
732 message_loop_.RunUntilIdle(); 732 message_loop_.RunUntilIdle();
733 } 733 }
734 734
735 // Invoked function OnError. This asserts that the pipeline does not enqueue 735 // Invoked function OnError. This asserts that the pipeline does not enqueue
736 // non-teardown related tasks while tearing down. 736 // non-teardown related tasks while tearing down.
737 static void TestNoCallsAfterError( 737 static void TestNoCallsAfterError(PipelineImpl* pipeline,
738 Pipeline* pipeline, base::MessageLoop* message_loop, 738 base::MessageLoop* message_loop,
739 PipelineStatus /* status */) { 739 PipelineStatus /* status */) {
740 CHECK(pipeline); 740 CHECK(pipeline);
741 CHECK(message_loop); 741 CHECK(message_loop);
742 742
743 // When we get to this stage, the message loop should be empty. 743 // When we get to this stage, the message loop should be empty.
744 EXPECT_TRUE(message_loop->IsIdleForTesting()); 744 EXPECT_TRUE(message_loop->IsIdleForTesting());
745 745
746 // Make calls on pipeline after error has occurred. 746 // Make calls on pipeline after error has occurred.
747 pipeline->SetPlaybackRate(0.5); 747 pipeline->SetPlaybackRate(0.5);
748 pipeline->SetVolume(0.5f); 748 pipeline->SetVolume(0.5f);
749 749
(...skipping 407 matching lines...) Expand 10 before | Expand all | Expand 10 after
1157 INSTANTIATE_TEARDOWN_TEST(Error, Seeking); 1157 INSTANTIATE_TEARDOWN_TEST(Error, Seeking);
1158 INSTANTIATE_TEARDOWN_TEST(Error, Playing); 1158 INSTANTIATE_TEARDOWN_TEST(Error, Playing);
1159 INSTANTIATE_TEARDOWN_TEST(Error, Suspending); 1159 INSTANTIATE_TEARDOWN_TEST(Error, Suspending);
1160 INSTANTIATE_TEARDOWN_TEST(Error, Suspended); 1160 INSTANTIATE_TEARDOWN_TEST(Error, Suspended);
1161 INSTANTIATE_TEARDOWN_TEST(Error, Resuming); 1161 INSTANTIATE_TEARDOWN_TEST(Error, Resuming);
1162 1162
1163 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Playing); 1163 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Playing);
1164 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Suspended); 1164 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Suspended);
1165 1165
1166 } // namespace media 1166 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698