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

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

Issue 7193001: Move rtc_video_decoder* from media/filter/ to content/renderer/media/. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: '' Created 9 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 <string> 5 #include <string>
6 6
7 #include "base/callback.h" 7 #include "base/callback.h"
8 #include "base/stl_util-inl.h" 8 #include "base/stl_util-inl.h"
9 #include "base/threading/simple_thread.h" 9 #include "base/threading/simple_thread.h"
10 #include "media/base/pipeline_impl.h" 10 #include "media/base/pipeline_impl.h"
(...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after
208 bool run_build = true; 208 bool run_build = true;
209 if (url.compare(kUrlMedia) == 0) 209 if (url.compare(kUrlMedia) == 0)
210 run_build = false; 210 run_build = false;
211 211
212 pipeline_->Start(mocks_->filter_collection(true, 212 pipeline_->Start(mocks_->filter_collection(true,
213 true, 213 true,
214 run_build, 214 run_build,
215 build_status), 215 build_status),
216 url, 216 url,
217 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_), 217 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_),
218 &CallbackHelper::OnStart)); 218 &CallbackHelper::OnStart),
219 !run_build);
219 220
220 message_loop_.RunAllPending(); 221 message_loop_.RunAllPending();
221 } 222 }
222 223
223 void CreateAudioStream() { 224 void CreateAudioStream() {
224 audio_stream_ = CreateStream(DemuxerStream::AUDIO); 225 audio_stream_ = CreateStream(DemuxerStream::AUDIO);
225 } 226 }
226 227
227 void CreateVideoStream() { 228 void CreateVideoStream() {
228 video_stream_ = CreateStream(DemuxerStream::VIDEO); 229 video_stream_ = CreateStream(DemuxerStream::VIDEO);
(...skipping 103 matching lines...) Expand 10 before | Expand all | Expand 10 after
332 TEST_F(PipelineImplTest, NeverInitializes) { 333 TEST_F(PipelineImplTest, NeverInitializes) {
333 // This test hangs during initialization by never calling 334 // This test hangs during initialization by never calling
334 // InitializationComplete(). StrictMock<> will ensure that the callback is 335 // InitializationComplete(). StrictMock<> will ensure that the callback is
335 // never executed. 336 // never executed.
336 pipeline_->Start(mocks_->filter_collection(false, 337 pipeline_->Start(mocks_->filter_collection(false,
337 false, 338 false,
338 true, 339 true,
339 PIPELINE_OK), 340 PIPELINE_OK),
340 "", 341 "",
341 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_), 342 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_),
342 &CallbackHelper::OnStart)); 343 &CallbackHelper::OnStart),
344 false);
343 message_loop_.RunAllPending(); 345 message_loop_.RunAllPending();
344 346
345 EXPECT_FALSE(pipeline_->IsInitialized()); 347 EXPECT_FALSE(pipeline_->IsInitialized());
346 348
347 // Because our callback will get executed when the test tears down, we'll 349 // Because our callback will get executed when the test tears down, we'll
348 // verify that nothing has been called, then set our expectation for the call 350 // verify that nothing has been called, then set our expectation for the call
349 // made during tear down. 351 // made during tear down.
350 Mock::VerifyAndClear(&callbacks_); 352 Mock::VerifyAndClear(&callbacks_);
351 EXPECT_CALL(callbacks_, OnStart(PIPELINE_OK)); 353 EXPECT_CALL(callbacks_, OnStart(PIPELINE_OK));
352 } 354 }
353 355
354 TEST_F(PipelineImplTest, RequiredFilterMissing) { 356 TEST_F(PipelineImplTest, RequiredFilterMissing) {
355 EXPECT_CALL(callbacks_, OnError(PIPELINE_ERROR_REQUIRED_FILTER_MISSING)); 357 EXPECT_CALL(callbacks_, OnError(PIPELINE_ERROR_REQUIRED_FILTER_MISSING));
356 358
357 // Sets up expectations on the callback and initializes the pipeline. Called 359 // Sets up expectations on the callback and initializes the pipeline. Called
358 // after tests have set expectations any filters they wish to use. 360 // after tests have set expectations any filters they wish to use.
359 // Expect an initialization callback. 361 // Expect an initialization callback.
360 EXPECT_CALL(callbacks_, OnStart(PIPELINE_ERROR_REQUIRED_FILTER_MISSING)); 362 EXPECT_CALL(callbacks_, OnStart(PIPELINE_ERROR_REQUIRED_FILTER_MISSING));
361 363
362 // Create a filter collection with missing filter. 364 // Create a filter collection with missing filter.
363 FilterCollection* collection = 365 FilterCollection* collection =
364 mocks_->filter_collection(false, 366 mocks_->filter_collection(false,
365 true, 367 true,
366 true, 368 true,
367 PIPELINE_ERROR_REQUIRED_FILTER_MISSING); 369 PIPELINE_ERROR_REQUIRED_FILTER_MISSING);
368 pipeline_->Start(collection, "", 370 pipeline_->Start(collection, "",
369 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_), 371 NewCallback(reinterpret_cast<CallbackHelper*>(&callbacks_),
370 &CallbackHelper::OnStart)); 372 &CallbackHelper::OnStart),
373 false);
371 message_loop_.RunAllPending(); 374 message_loop_.RunAllPending();
372 375
373 EXPECT_FALSE(pipeline_->IsInitialized()); 376 EXPECT_FALSE(pipeline_->IsInitialized());
374 } 377 }
375 378
376 TEST_F(PipelineImplTest, URLNotFound) { 379 TEST_F(PipelineImplTest, URLNotFound) {
377 // TODO(acolwell,fischman): Since OnStart() is getting called with an error 380 // TODO(acolwell,fischman): Since OnStart() is getting called with an error
378 // code already, OnError() doesn't also need to get called. Fix the pipeline 381 // code already, OnError() doesn't also need to get called. Fix the pipeline
379 // (and it's consumers!) so that OnError doesn't need to be called after 382 // (and it's consumers!) so that OnError doesn't need to be called after
380 // another callback has already reported the error. Same applies to NoStreams 383 // another callback has already reported the error. Same applies to NoStreams
(...skipping 511 matching lines...) Expand 10 before | Expand all | Expand 10 after
892 TestPipelineStatusNotification(0); 895 TestPipelineStatusNotification(0);
893 } 896 }
894 897
895 // Test that different-thread, some-delay callback (the expected common case) 898 // Test that different-thread, some-delay callback (the expected common case)
896 // works correctly. 899 // works correctly.
897 TEST(PipelineStatusNotificationTest, DelayedCallback) { 900 TEST(PipelineStatusNotificationTest, DelayedCallback) {
898 TestPipelineStatusNotification(20); 901 TestPipelineStatusNotification(20);
899 } 902 }
900 903
901 } // namespace media 904 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698