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 "base/bind.h" | 5 #include "base/bind.h" |
6 #include "base/bind_helpers.h" | 6 #include "base/bind_helpers.h" |
7 #include "base/message_loop.h" | 7 #include "base/message_loop.h" |
8 #include "base/process_util.h" | 8 #include "base/process_util.h" |
9 #include "base/synchronization/waitable_event.h" | 9 #include "base/synchronization/waitable_event.h" |
10 #include "base/test/test_timeouts.h" | 10 #include "base/test/test_timeouts.h" |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 .WillRepeatedly(Return(CHANNEL_LAYOUT_MONO)); | 99 .WillRepeatedly(Return(CHANNEL_LAYOUT_MONO)); |
100 EXPECT_CALL(*decoder_, samples_per_second()) | 100 EXPECT_CALL(*decoder_, samples_per_second()) |
101 .WillRepeatedly(Return(44100)); | 101 .WillRepeatedly(Return(44100)); |
102 | 102 |
103 // Create a sink for the audio renderer. | 103 // Create a sink for the audio renderer. |
104 scoped_refptr<media::AudioRendererSink> default_sink = | 104 scoped_refptr<media::AudioRendererSink> default_sink = |
105 new AudioDevice(); | 105 new AudioDevice(); |
106 | 106 |
107 // Create and initialize the audio renderer. | 107 // Create and initialize the audio renderer. |
108 renderer_ = new TestAudioRendererImpl(default_sink.get()); | 108 renderer_ = new TestAudioRendererImpl(default_sink.get()); |
109 renderer_->Initialize(decoder_, media::NewExpectedClosure(), | 109 renderer_->Initialize(decoder_, |
| 110 media::NewExpectedStatusCB(media::PIPELINE_OK), |
110 NewUnderflowClosure()); | 111 NewUnderflowClosure()); |
111 | 112 |
112 // We need an event to verify that all tasks are done before leaving | 113 // We need an event to verify that all tasks are done before leaving |
113 // our tests. | 114 // our tests. |
114 event_.reset(new base::WaitableEvent(false, false)); | 115 event_.reset(new base::WaitableEvent(false, false)); |
115 } | 116 } |
116 | 117 |
117 virtual void TearDown() { | 118 virtual void TearDown() { |
118 mock_process_.reset(); | 119 mock_process_.reset(); |
119 } | 120 } |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 base::Time time_now = base::Time(); // Null time by default. | 179 base::Time time_now = base::Time(); // Null time by default. |
179 renderer_->set_earliest_end_time(time_now); | 180 renderer_->set_earliest_end_time(time_now); |
180 renderer_->UpdateEarliestEndTime(renderer_->bytes_per_second(), | 181 renderer_->UpdateEarliestEndTime(renderer_->bytes_per_second(), |
181 base::TimeDelta::FromMilliseconds(100), | 182 base::TimeDelta::FromMilliseconds(100), |
182 time_now); | 183 time_now); |
183 int time_delta = (renderer_->earliest_end_time() - time_now).InMilliseconds(); | 184 int time_delta = (renderer_->earliest_end_time() - time_now).InMilliseconds(); |
184 EXPECT_EQ(1100, time_delta); | 185 EXPECT_EQ(1100, time_delta); |
185 renderer_->Stop(media::NewExpectedClosure()); | 186 renderer_->Stop(media::NewExpectedClosure()); |
186 WaitForIOThreadCompletion(); | 187 WaitForIOThreadCompletion(); |
187 } | 188 } |
OLD | NEW |