| OLD | NEW |
| 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_impl.h" | 5 #include "media/base/pipeline_impl.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 #include <memory> | 8 #include <memory> |
| 9 #include <utility> | 9 #include <utility> |
| 10 #include <vector> | 10 #include <vector> |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 #include "base/threading/thread_task_runner_handle.h" | 21 #include "base/threading/thread_task_runner_handle.h" |
| 22 #include "base/time/clock.h" | 22 #include "base/time/clock.h" |
| 23 #include "media/base/fake_text_track_stream.h" | 23 #include "media/base/fake_text_track_stream.h" |
| 24 #include "media/base/gmock_callback_support.h" | 24 #include "media/base/gmock_callback_support.h" |
| 25 #include "media/base/media_log.h" | 25 #include "media/base/media_log.h" |
| 26 #include "media/base/mock_filters.h" | 26 #include "media/base/mock_filters.h" |
| 27 #include "media/base/test_helpers.h" | 27 #include "media/base/test_helpers.h" |
| 28 #include "media/base/text_renderer.h" | 28 #include "media/base/text_renderer.h" |
| 29 #include "media/base/text_track_config.h" | 29 #include "media/base/text_track_config.h" |
| 30 #include "media/base/time_delta_interpolator.h" | 30 #include "media/base/time_delta_interpolator.h" |
| 31 #include "testing/gmock_mutant.h" |
| 31 #include "testing/gtest/include/gtest/gtest.h" | 32 #include "testing/gtest/include/gtest/gtest.h" |
| 32 #include "ui/gfx/geometry/size.h" | 33 #include "ui/gfx/geometry/size.h" |
| 33 | 34 |
| 34 using ::testing::_; | 35 using ::testing::_; |
| 35 using ::testing::AnyNumber; | 36 using ::testing::AnyNumber; |
| 37 using ::testing::CreateFunctor; |
| 36 using ::testing::DeleteArg; | 38 using ::testing::DeleteArg; |
| 37 using ::testing::DoAll; | 39 using ::testing::DoAll; |
| 38 // TODO(scherkus): Remove InSequence after refactoring Pipeline. | 40 // TODO(scherkus): Remove InSequence after refactoring Pipeline. |
| 39 using ::testing::InSequence; | 41 using ::testing::InSequence; |
| 40 using ::testing::Invoke; | 42 using ::testing::Invoke; |
| 41 using ::testing::InvokeWithoutArgs; | 43 using ::testing::InvokeWithoutArgs; |
| 42 using ::testing::Mock; | 44 using ::testing::Mock; |
| 43 using ::testing::NotNull; | 45 using ::testing::NotNull; |
| 44 using ::testing::Return; | 46 using ::testing::Return; |
| 45 using ::testing::SaveArg; | 47 using ::testing::SaveArg; |
| (...skipping 681 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 727 MockDemuxerStreamVector streams; | 729 MockDemuxerStreamVector streams; |
| 728 streams.push_back(audio_stream()); | 730 streams.push_back(audio_stream()); |
| 729 | 731 |
| 730 SetDemuxerExpectations(&streams); | 732 SetDemuxerExpectations(&streams); |
| 731 SetRendererExpectations(); | 733 SetRendererExpectations(); |
| 732 StartPipelineAndExpect(PIPELINE_OK); | 734 StartPipelineAndExpect(PIPELINE_OK); |
| 733 | 735 |
| 734 // Trigger additional requests on the pipeline during tear down from error. | 736 // Trigger additional requests on the pipeline during tear down from error. |
| 735 base::Callback<void(PipelineStatus)> cb = | 737 base::Callback<void(PipelineStatus)> cb = |
| 736 base::Bind(&TestNoCallsAfterError, pipeline_.get(), &message_loop_); | 738 base::Bind(&TestNoCallsAfterError, pipeline_.get(), &message_loop_); |
| 737 ON_CALL(callbacks_, OnError(_)) | 739 ON_CALL(callbacks_, OnError(_)).WillByDefault(Invoke(CreateFunctor(cb))); |
| 738 .WillByDefault(Invoke(&cb, &base::Callback<void(PipelineStatus)>::Run)); | |
| 739 | 740 |
| 740 base::TimeDelta seek_time = base::TimeDelta::FromSeconds(5); | 741 base::TimeDelta seek_time = base::TimeDelta::FromSeconds(5); |
| 741 | 742 |
| 742 // Seek() isn't called as the demuxer errors out first. | 743 // Seek() isn't called as the demuxer errors out first. |
| 743 EXPECT_CALL(*renderer_, Flush(_)) | 744 EXPECT_CALL(*renderer_, Flush(_)) |
| 744 .WillOnce( | 745 .WillOnce( |
| 745 DoAll(SetBufferingState(&renderer_client_, BUFFERING_HAVE_NOTHING), | 746 DoAll(SetBufferingState(&renderer_client_, BUFFERING_HAVE_NOTHING), |
| 746 RunClosure<0>())); | 747 RunClosure<0>())); |
| 747 EXPECT_CALL(callbacks_, OnBufferingStateChange(BUFFERING_HAVE_NOTHING)); | 748 EXPECT_CALL(callbacks_, OnBufferingStateChange(BUFFERING_HAVE_NOTHING)); |
| 748 | 749 |
| (...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1125 INSTANTIATE_TEARDOWN_TEST(Error, Seeking); | 1126 INSTANTIATE_TEARDOWN_TEST(Error, Seeking); |
| 1126 INSTANTIATE_TEARDOWN_TEST(Error, Playing); | 1127 INSTANTIATE_TEARDOWN_TEST(Error, Playing); |
| 1127 INSTANTIATE_TEARDOWN_TEST(Error, Suspending); | 1128 INSTANTIATE_TEARDOWN_TEST(Error, Suspending); |
| 1128 INSTANTIATE_TEARDOWN_TEST(Error, Suspended); | 1129 INSTANTIATE_TEARDOWN_TEST(Error, Suspended); |
| 1129 INSTANTIATE_TEARDOWN_TEST(Error, Resuming); | 1130 INSTANTIATE_TEARDOWN_TEST(Error, Resuming); |
| 1130 | 1131 |
| 1131 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Playing); | 1132 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Playing); |
| 1132 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Suspended); | 1133 INSTANTIATE_TEARDOWN_TEST(ErrorAndStop, Suspended); |
| 1133 | 1134 |
| 1134 } // namespace media | 1135 } // namespace media |
| OLD | NEW |