| 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/environment.h" | 6 #include "base/environment.h" |
| 7 #include "base/memory/scoped_ptr.h" | 7 #include "base/memory/scoped_ptr.h" |
| 8 #include "base/message_loop.h" | 8 #include "base/message_loop.h" |
| 9 #include "base/process_util.h" | 9 #include "base/process_util.h" |
| 10 #include "base/sync_socket.h" | 10 #include "base/sync_socket.h" |
| (...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 194 | 194 |
| 195 io_thread_.reset(); | 195 io_thread_.reset(); |
| 196 ui_thread_.reset(); | 196 ui_thread_.reset(); |
| 197 } | 197 } |
| 198 | 198 |
| 199 void Create() { | 199 void Create() { |
| 200 EXPECT_CALL(*observer_, | 200 EXPECT_CALL(*observer_, |
| 201 OnSetAudioStreamStatus(_, kStreamId, "created")); | 201 OnSetAudioStreamStatus(_, kStreamId, "created")); |
| 202 | 202 |
| 203 InSequence s; | 203 InSequence s; |
| 204 // We will first receive an OnStreamCreated() signal. | 204 |
| 205 // We will first receive an OnStreamCreated() signal and AudioRendererHost |
| 206 // will register the stream with the AudioMirroringManager. |
| 205 EXPECT_CALL(*host_, OnStreamCreated(kStreamId, _)) | 207 EXPECT_CALL(*host_, OnStreamCreated(kStreamId, _)) |
| 206 .WillOnce(QuitMessageLoop(message_loop_.get())); | 208 .WillOnce(QuitMessageLoop(message_loop_.get())); |
| 209 EXPECT_CALL(mirroring_manager_, |
| 210 AddDiverter(kRenderProcessId, kRenderViewId, NotNull())) |
| 211 .RetiresOnSaturation(); |
| 207 | 212 |
| 208 // Send a create stream message to the audio output stream and wait until | 213 // Send a create stream message to the audio output stream and wait until |
| 209 // we receive the created message. | 214 // we receive the created message. |
| 210 host_->OnCreateStream(kStreamId, | 215 host_->OnCreateStream(kStreamId, |
| 216 kRenderViewId, |
| 211 media::AudioParameters( | 217 media::AudioParameters( |
| 212 media::AudioParameters::AUDIO_FAKE, | 218 media::AudioParameters::AUDIO_FAKE, |
| 213 media::CHANNEL_LAYOUT_STEREO, | 219 media::CHANNEL_LAYOUT_STEREO, |
| 214 media::AudioParameters::kAudioCDSampleRate, 16, | 220 media::AudioParameters::kAudioCDSampleRate, 16, |
| 215 media::AudioParameters::kAudioCDSampleRate / 10)); | 221 media::AudioParameters::kAudioCDSampleRate / 10)); |
| 216 message_loop_->Run(); | 222 message_loop_->Run(); |
| 217 | 223 |
| 218 // Simulate the renderer process associating a stream with a render view. | |
| 219 EXPECT_CALL(mirroring_manager_, | |
| 220 RemoveDiverter(kRenderProcessId, MSG_ROUTING_NONE, _)) | |
| 221 .RetiresOnSaturation(); | |
| 222 EXPECT_CALL(mirroring_manager_, | |
| 223 AddDiverter(kRenderProcessId, kRenderViewId, NotNull())) | |
| 224 .RetiresOnSaturation(); | |
| 225 host_->OnAssociateStreamWithProducer(kStreamId, kRenderViewId); | |
| 226 message_loop_->RunUntilIdle(); | |
| 227 // At some point in the future, a corresponding RemoveDiverter() call must | 224 // At some point in the future, a corresponding RemoveDiverter() call must |
| 228 // be made. | 225 // be made. |
| 229 EXPECT_CALL(mirroring_manager_, | 226 EXPECT_CALL(mirroring_manager_, |
| 230 RemoveDiverter(kRenderProcessId, kRenderViewId, NotNull())) | 227 RemoveDiverter(kRenderProcessId, kRenderViewId, NotNull())) |
| 231 .RetiresOnSaturation(); | 228 .RetiresOnSaturation(); |
| 232 | 229 |
| 233 // Expect the audio stream will be deleted at some later point. | 230 // Expect the audio stream will be deleted at some later point. |
| 234 EXPECT_CALL(*observer_, OnDeleteAudioStream(_, kStreamId)); | 231 EXPECT_CALL(*observer_, OnDeleteAudioStream(_, kStreamId)); |
| 235 } | 232 } |
| 236 | 233 |
| (...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 387 TEST_F(AudioRendererHostTest, SimulateErrorAndClose) { | 384 TEST_F(AudioRendererHostTest, SimulateErrorAndClose) { |
| 388 Create(); | 385 Create(); |
| 389 Play(); | 386 Play(); |
| 390 SimulateError(); | 387 SimulateError(); |
| 391 Close(); | 388 Close(); |
| 392 } | 389 } |
| 393 | 390 |
| 394 // TODO(hclam): Add tests for data conversation in low latency mode. | 391 // TODO(hclam): Add tests for data conversation in low latency mode. |
| 395 | 392 |
| 396 } // namespace content | 393 } // namespace content |
| OLD | NEW |