| 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 "content/renderer/media/media_stream_dispatcher.h" | 5 #include "content/renderer/media/media_stream_dispatcher.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <memory> | 9 #include <memory> |
| 10 #include <string> | 10 #include <string> |
| (...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 110 : dispatcher_(new MediaStreamDispatcherUnderTest()), | 110 : dispatcher_(new MediaStreamDispatcherUnderTest()), |
| 111 handler_(new MockMediaStreamDispatcherEventHandler), | 111 handler_(new MockMediaStreamDispatcherEventHandler), |
| 112 security_origin_(GURL("http://test.com")) {} | 112 security_origin_(GURL("http://test.com")) {} |
| 113 | 113 |
| 114 // Generates a request for a MediaStream and returns the request id that is | 114 // Generates a request for a MediaStream and returns the request id that is |
| 115 // used in IPC. Use this returned id in CompleteGenerateStream to identify | 115 // used in IPC. Use this returned id in CompleteGenerateStream to identify |
| 116 // the request. | 116 // the request. |
| 117 int GenerateStream(const StreamControls& controls, int request_id) { | 117 int GenerateStream(const StreamControls& controls, int request_id) { |
| 118 int next_ipc_id = dispatcher_->GetNextIpcIdForTest(); | 118 int next_ipc_id = dispatcher_->GetNextIpcIdForTest(); |
| 119 dispatcher_->GenerateStream(request_id, handler_.get()->AsWeakPtr(), | 119 dispatcher_->GenerateStream(request_id, handler_.get()->AsWeakPtr(), |
| 120 controls, security_origin_, true); | 120 controls, security_origin_); |
| 121 return next_ipc_id; | 121 return next_ipc_id; |
| 122 } | 122 } |
| 123 | 123 |
| 124 // CompleteGenerateStream create a MediaStreamMsg_StreamGenerated instance | 124 // CompleteGenerateStream create a MediaStreamMsg_StreamGenerated instance |
| 125 // and call the MediaStreamDispathcer::OnMessageReceived. |ipc_id| must be the | 125 // and call the MediaStreamDispathcer::OnMessageReceived. |ipc_id| must be the |
| 126 // the id returned by GenerateStream. | 126 // the id returned by GenerateStream. |
| 127 std::string CompleteGenerateStream(int ipc_id, | 127 std::string CompleteGenerateStream(int ipc_id, |
| 128 const StreamControls& controls, | 128 const StreamControls& controls, |
| 129 int request_id) { | 129 int request_id) { |
| 130 StreamDeviceInfoArray audio_device_array(controls.audio.requested ? 1 : 0); | 130 StreamDeviceInfoArray audio_device_array(controls.audio.requested ? 1 : 0); |
| (...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 275 std::unique_ptr<MediaStreamDispatcher> dispatcher( | 275 std::unique_ptr<MediaStreamDispatcher> dispatcher( |
| 276 new MediaStreamDispatcher(NULL)); | 276 new MediaStreamDispatcher(NULL)); |
| 277 std::unique_ptr<MockMediaStreamDispatcherEventHandler> handler( | 277 std::unique_ptr<MockMediaStreamDispatcherEventHandler> handler( |
| 278 new MockMediaStreamDispatcherEventHandler); | 278 new MockMediaStreamDispatcherEventHandler); |
| 279 StreamControls components(true, true); | 279 StreamControls components(true, true); |
| 280 url::Origin security_origin; | 280 url::Origin security_origin; |
| 281 | 281 |
| 282 // Test failure when creating a stream. | 282 // Test failure when creating a stream. |
| 283 int ipc_request_id1 = dispatcher->next_ipc_id_; | 283 int ipc_request_id1 = dispatcher->next_ipc_id_; |
| 284 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), | 284 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), |
| 285 components, security_origin, true); | 285 components, security_origin); |
| 286 dispatcher->OnMessageReceived(MediaStreamMsg_StreamGenerationFailed( | 286 dispatcher->OnMessageReceived(MediaStreamMsg_StreamGenerationFailed( |
| 287 kRouteId, ipc_request_id1, MEDIA_DEVICE_PERMISSION_DENIED)); | 287 kRouteId, ipc_request_id1, MEDIA_DEVICE_PERMISSION_DENIED)); |
| 288 | 288 |
| 289 // Verify that the request have been completed. | 289 // Verify that the request have been completed. |
| 290 EXPECT_EQ(handler->request_id_, kRequestId1); | 290 EXPECT_EQ(handler->request_id_, kRequestId1); |
| 291 EXPECT_EQ(dispatcher->requests_.size(), size_t(0)); | 291 EXPECT_EQ(dispatcher->requests_.size(), size_t(0)); |
| 292 | 292 |
| 293 // Create a new stream. | 293 // Create a new stream. |
| 294 ipc_request_id1 = dispatcher->next_ipc_id_; | 294 ipc_request_id1 = dispatcher->next_ipc_id_; |
| 295 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), | 295 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), |
| 296 components, security_origin, true); | 296 components, security_origin); |
| 297 | 297 |
| 298 StreamDeviceInfoArray audio_device_array(1); | 298 StreamDeviceInfoArray audio_device_array(1); |
| 299 StreamDeviceInfo audio_device_info; | 299 StreamDeviceInfo audio_device_info; |
| 300 audio_device_info.device.name = "Microphone"; | 300 audio_device_info.device.name = "Microphone"; |
| 301 audio_device_info.device.type = kAudioType; | 301 audio_device_info.device.type = kAudioType; |
| 302 audio_device_info.session_id = kAudioSessionId; | 302 audio_device_info.session_id = kAudioSessionId; |
| 303 audio_device_array[0] = audio_device_info; | 303 audio_device_array[0] = audio_device_info; |
| 304 | 304 |
| 305 StreamDeviceInfoArray video_device_array(1); | 305 StreamDeviceInfoArray video_device_array(1); |
| 306 StreamDeviceInfo video_device_info; | 306 StreamDeviceInfo video_device_info; |
| (...skipping 14 matching lines...) Expand all Loading... |
| 321 | 321 |
| 322 TEST_F(MediaStreamDispatcherTest, CancelGenerateStream) { | 322 TEST_F(MediaStreamDispatcherTest, CancelGenerateStream) { |
| 323 std::unique_ptr<MediaStreamDispatcher> dispatcher( | 323 std::unique_ptr<MediaStreamDispatcher> dispatcher( |
| 324 new MediaStreamDispatcher(NULL)); | 324 new MediaStreamDispatcher(NULL)); |
| 325 std::unique_ptr<MockMediaStreamDispatcherEventHandler> handler( | 325 std::unique_ptr<MockMediaStreamDispatcherEventHandler> handler( |
| 326 new MockMediaStreamDispatcherEventHandler); | 326 new MockMediaStreamDispatcherEventHandler); |
| 327 StreamControls components(true, true); | 327 StreamControls components(true, true); |
| 328 int ipc_request_id1 = dispatcher->next_ipc_id_; | 328 int ipc_request_id1 = dispatcher->next_ipc_id_; |
| 329 | 329 |
| 330 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), | 330 dispatcher->GenerateStream(kRequestId1, handler.get()->AsWeakPtr(), |
| 331 components, url::Origin(), true); | 331 components, url::Origin()); |
| 332 dispatcher->GenerateStream(kRequestId2, handler.get()->AsWeakPtr(), | 332 dispatcher->GenerateStream(kRequestId2, handler.get()->AsWeakPtr(), |
| 333 components, url::Origin(), true); | 333 components, url::Origin()); |
| 334 | 334 |
| 335 EXPECT_EQ(2u, dispatcher->requests_.size()); | 335 EXPECT_EQ(2u, dispatcher->requests_.size()); |
| 336 dispatcher->CancelGenerateStream(kRequestId2, handler.get()->AsWeakPtr()); | 336 dispatcher->CancelGenerateStream(kRequestId2, handler.get()->AsWeakPtr()); |
| 337 EXPECT_EQ(1u, dispatcher->requests_.size()); | 337 EXPECT_EQ(1u, dispatcher->requests_.size()); |
| 338 | 338 |
| 339 // Complete the creation of stream1. | 339 // Complete the creation of stream1. |
| 340 StreamDeviceInfo audio_device_info; | 340 StreamDeviceInfo audio_device_info; |
| 341 audio_device_info.device.name = "Microphone"; | 341 audio_device_info.device.name = "Microphone"; |
| 342 audio_device_info.device.type = kAudioType; | 342 audio_device_info.device.type = kAudioType; |
| 343 audio_device_info.session_id = kAudioSessionId; | 343 audio_device_info.session_id = kAudioSessionId; |
| (...skipping 28 matching lines...) Expand all Loading... |
| 372 dispatcher_->OnMessageReceived( | 372 dispatcher_->OnMessageReceived( |
| 373 MediaStreamMsg_DeviceStopped(kRouteId, label, handler_->video_device_)); | 373 MediaStreamMsg_DeviceStopped(kRouteId, label, handler_->video_device_)); |
| 374 // Verify that MediaStreamDispatcherEventHandler::OnDeviceStopped has been | 374 // Verify that MediaStreamDispatcherEventHandler::OnDeviceStopped has been |
| 375 // called. | 375 // called. |
| 376 EXPECT_EQ(label, handler_->device_stopped_label_); | 376 EXPECT_EQ(label, handler_->device_stopped_label_); |
| 377 EXPECT_EQ(dispatcher_->video_session_id(label, 0), | 377 EXPECT_EQ(dispatcher_->video_session_id(label, 0), |
| 378 StreamDeviceInfo::kNoId); | 378 StreamDeviceInfo::kNoId); |
| 379 } | 379 } |
| 380 | 380 |
| 381 } // namespace content | 381 } // namespace content |
| OLD | NEW |