| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/mock_filters.h" | 5 #include "media/base/mock_filters.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/memory/scoped_ptr.h" |
| 8 #include "media/base/filter_host.h" | 9 #include "media/base/filter_host.h" |
| 9 | 10 |
| 10 using ::testing::_; | 11 using ::testing::_; |
| 11 using ::testing::Invoke; | 12 using ::testing::Invoke; |
| 12 using ::testing::NotNull; | 13 using ::testing::NotNull; |
| 13 | 14 |
| 14 namespace media { | 15 namespace media { |
| 15 | 16 |
| 16 MockDataSource::MockDataSource() | 17 MockDataSource::MockDataSource() |
| 17 : total_bytes_(-1), | 18 : total_bytes_(-1), |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 58 demuxer_ = NULL; | 59 demuxer_ = NULL; |
| 59 | 60 |
| 60 if (status_ == PIPELINE_OK) { | 61 if (status_ == PIPELINE_OK) { |
| 61 callback.Run(PIPELINE_OK, demuxer.get()); | 62 callback.Run(PIPELINE_OK, demuxer.get()); |
| 62 return; | 63 return; |
| 63 } | 64 } |
| 64 | 65 |
| 65 callback.Run(status_, NULL); | 66 callback.Run(status_, NULL); |
| 66 } | 67 } |
| 67 | 68 |
| 68 DemuxerFactory* MockDemuxerFactory::Clone() const { | 69 scoped_ptr<DemuxerFactory> MockDemuxerFactory::Clone() const { |
| 69 return new MockDemuxerFactory(demuxer_.get()); | 70 return scoped_ptr<DemuxerFactory>(new MockDemuxerFactory(demuxer_.get())); |
| 70 } | 71 } |
| 71 | 72 |
| 72 MockDemuxer::MockDemuxer() | 73 MockDemuxer::MockDemuxer() |
| 73 : total_bytes_(-1), buffered_bytes_(-1), duration_() {} | 74 : total_bytes_(-1), buffered_bytes_(-1), duration_() {} |
| 74 | 75 |
| 75 MockDemuxer::~MockDemuxer() {} | 76 MockDemuxer::~MockDemuxer() {} |
| 76 | 77 |
| 77 void MockDemuxer::set_host(DemuxerHost* demuxer_host) { | 78 void MockDemuxer::set_host(DemuxerHost* demuxer_host) { |
| 78 Demuxer::set_host(demuxer_host); | 79 Demuxer::set_host(demuxer_host); |
| 79 | 80 |
| (...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 117 MockFilterCollection::MockFilterCollection() | 118 MockFilterCollection::MockFilterCollection() |
| 118 : demuxer_(new MockDemuxer()), | 119 : demuxer_(new MockDemuxer()), |
| 119 video_decoder_(new MockVideoDecoder()), | 120 video_decoder_(new MockVideoDecoder()), |
| 120 audio_decoder_(new MockAudioDecoder()), | 121 audio_decoder_(new MockAudioDecoder()), |
| 121 video_renderer_(new MockVideoRenderer()), | 122 video_renderer_(new MockVideoRenderer()), |
| 122 audio_renderer_(new MockAudioRenderer()) { | 123 audio_renderer_(new MockAudioRenderer()) { |
| 123 } | 124 } |
| 124 | 125 |
| 125 MockFilterCollection::~MockFilterCollection() {} | 126 MockFilterCollection::~MockFilterCollection() {} |
| 126 | 127 |
| 127 FilterCollection* MockFilterCollection::filter_collection( | 128 scoped_ptr<FilterCollection> MockFilterCollection::filter_collection( |
| 128 bool include_demuxer, | 129 bool include_demuxer, |
| 129 bool run_build_callback, | 130 bool run_build_callback, |
| 130 bool run_build, | 131 bool run_build, |
| 131 PipelineStatus build_status) const { | 132 PipelineStatus build_status) const { |
| 132 FilterCollection* collection = new FilterCollection(); | 133 scoped_ptr<FilterCollection> collection(new FilterCollection()); |
| 133 | 134 |
| 134 MockDemuxerFactory* demuxer_factory = | 135 scoped_ptr<MockDemuxerFactory> demuxer_factory( |
| 135 new MockDemuxerFactory(include_demuxer ? demuxer_ : NULL); | 136 new MockDemuxerFactory(include_demuxer ? demuxer_ : NULL)); |
| 136 | 137 |
| 137 if (build_status != PIPELINE_OK) | 138 if (build_status != PIPELINE_OK) |
| 138 demuxer_factory->SetError(build_status); | 139 demuxer_factory->SetError(build_status); |
| 139 | 140 |
| 140 if (run_build_callback) { | 141 if (run_build_callback) { |
| 141 ON_CALL(*demuxer_factory, Build(_, _)).WillByDefault(Invoke( | 142 ON_CALL(*demuxer_factory, Build(_, _)).WillByDefault(Invoke( |
| 142 demuxer_factory, &MockDemuxerFactory::RunBuildCallback)); | 143 demuxer_factory.get(), &MockDemuxerFactory::RunBuildCallback)); |
| 143 } // else ignore Build calls. | 144 } // else ignore Build calls. |
| 144 | 145 |
| 145 if (run_build) | 146 if (run_build) |
| 146 EXPECT_CALL(*demuxer_factory, Build(_, _)); | 147 EXPECT_CALL(*demuxer_factory, Build(_, _)); |
| 147 | 148 |
| 148 collection->SetDemuxerFactory(demuxer_factory); | 149 // TODO(fischman): replace the extra scoped_ptr+release() with Pass() when |
| 150 // http://crbug.com/109026 is fixed. |
| 151 collection->SetDemuxerFactory(scoped_ptr<DemuxerFactory>( |
| 152 demuxer_factory.release())); |
| 149 collection->AddVideoDecoder(video_decoder_); | 153 collection->AddVideoDecoder(video_decoder_); |
| 150 collection->AddAudioDecoder(audio_decoder_); | 154 collection->AddAudioDecoder(audio_decoder_); |
| 151 collection->AddVideoRenderer(video_renderer_); | 155 collection->AddVideoRenderer(video_renderer_); |
| 152 collection->AddAudioRenderer(audio_renderer_); | 156 collection->AddAudioRenderer(audio_renderer_); |
| 153 return collection; | 157 return collection.Pass(); |
| 154 } | 158 } |
| 155 | 159 |
| 156 void RunFilterCallback(::testing::Unused, const base::Closure& callback) { | 160 void RunFilterCallback(::testing::Unused, const base::Closure& callback) { |
| 157 callback.Run(); | 161 callback.Run(); |
| 158 | 162 |
| 159 } | 163 } |
| 160 | 164 |
| 161 void RunFilterStatusCB(::testing::Unused, const FilterStatusCB& cb) { | 165 void RunFilterStatusCB(::testing::Unused, const FilterStatusCB& cb) { |
| 162 cb.Run(PIPELINE_OK); | 166 cb.Run(PIPELINE_OK); |
| 163 } | 167 } |
| (...skipping 15 matching lines...) Expand all Loading... |
| 179 MockFilter::MockFilter() { | 183 MockFilter::MockFilter() { |
| 180 } | 184 } |
| 181 | 185 |
| 182 MockFilter::~MockFilter() {} | 186 MockFilter::~MockFilter() {} |
| 183 | 187 |
| 184 MockStatisticsCallback::MockStatisticsCallback() {} | 188 MockStatisticsCallback::MockStatisticsCallback() {} |
| 185 | 189 |
| 186 MockStatisticsCallback::~MockStatisticsCallback() {} | 190 MockStatisticsCallback::~MockStatisticsCallback() {} |
| 187 | 191 |
| 188 } // namespace media | 192 } // namespace media |
| OLD | NEW |