| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/shell/renderer/test_runner/mock_web_user_media_client.h" | 5 #include "content/shell/renderer/test_runner/mock_web_user_media_client.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "content/shell/renderer/test_runner/WebTestDelegate.h" | |
| 10 #include "content/shell/renderer/test_runner/mock_constraints.h" | 9 #include "content/shell/renderer/test_runner/mock_constraints.h" |
| 10 #include "content/shell/renderer/test_runner/web_test_delegate.h" |
| 11 #include "third_party/WebKit/public/platform/WebMediaConstraints.h" | 11 #include "third_party/WebKit/public/platform/WebMediaConstraints.h" |
| 12 #include "third_party/WebKit/public/platform/WebMediaDeviceInfo.h" | 12 #include "third_party/WebKit/public/platform/WebMediaDeviceInfo.h" |
| 13 #include "third_party/WebKit/public/platform/WebMediaStream.h" | 13 #include "third_party/WebKit/public/platform/WebMediaStream.h" |
| 14 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" | 14 #include "third_party/WebKit/public/platform/WebMediaStreamSource.h" |
| 15 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" | 15 #include "third_party/WebKit/public/platform/WebMediaStreamTrack.h" |
| 16 #include "third_party/WebKit/public/platform/WebMediaStreamTrackSourcesRequest.h
" | 16 #include "third_party/WebKit/public/platform/WebMediaStreamTrackSourcesRequest.h
" |
| 17 #include "third_party/WebKit/public/platform/WebSourceInfo.h" | 17 #include "third_party/WebKit/public/platform/WebSourceInfo.h" |
| 18 #include "third_party/WebKit/public/platform/WebVector.h" | 18 #include "third_party/WebKit/public/platform/WebVector.h" |
| 19 #include "third_party/WebKit/public/web/WebDocument.h" | 19 #include "third_party/WebKit/public/web/WebDocument.h" |
| 20 #include "third_party/WebKit/public/web/WebMediaDevicesRequest.h" | 20 #include "third_party/WebKit/public/web/WebMediaDevicesRequest.h" |
| (...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 135 | 135 |
| 136 MockWebUserMediaClient::MockWebUserMediaClient(WebTestDelegate* delegate) | 136 MockWebUserMediaClient::MockWebUserMediaClient(WebTestDelegate* delegate) |
| 137 : delegate_(delegate) {} | 137 : delegate_(delegate) {} |
| 138 | 138 |
| 139 void MockWebUserMediaClient::requestUserMedia( | 139 void MockWebUserMediaClient::requestUserMedia( |
| 140 const WebUserMediaRequest& stream_request) { | 140 const WebUserMediaRequest& stream_request) { |
| 141 DCHECK(!stream_request.isNull()); | 141 DCHECK(!stream_request.isNull()); |
| 142 WebUserMediaRequest request = stream_request; | 142 WebUserMediaRequest request = stream_request; |
| 143 | 143 |
| 144 if (request.ownerDocument().isNull() || !request.ownerDocument().frame()) { | 144 if (request.ownerDocument().isNull() || !request.ownerDocument().frame()) { |
| 145 delegate_->postTask( | 145 delegate_->PostTask( |
| 146 new UserMediaRequestPermissionDeniedTask(this, request)); | 146 new UserMediaRequestPermissionDeniedTask(this, request)); |
| 147 return; | 147 return; |
| 148 } | 148 } |
| 149 | 149 |
| 150 WebMediaConstraints constraints = request.audioConstraints(); | 150 WebMediaConstraints constraints = request.audioConstraints(); |
| 151 WebString failed_constraint; | 151 WebString failed_constraint; |
| 152 if (!constraints.isNull() && | 152 if (!constraints.isNull() && |
| 153 !MockConstraints::VerifyConstraints(constraints, &failed_constraint)) { | 153 !MockConstraints::VerifyConstraints(constraints, &failed_constraint)) { |
| 154 delegate_->postTask(new UserMediaRequestConstraintFailedTask( | 154 delegate_->PostTask(new UserMediaRequestConstraintFailedTask( |
| 155 this, request, failed_constraint)); | 155 this, request, failed_constraint)); |
| 156 return; | 156 return; |
| 157 } | 157 } |
| 158 constraints = request.videoConstraints(); | 158 constraints = request.videoConstraints(); |
| 159 if (!constraints.isNull() && | 159 if (!constraints.isNull() && |
| 160 !MockConstraints::VerifyConstraints(constraints, &failed_constraint)) { | 160 !MockConstraints::VerifyConstraints(constraints, &failed_constraint)) { |
| 161 delegate_->postTask(new UserMediaRequestConstraintFailedTask( | 161 delegate_->PostTask(new UserMediaRequestConstraintFailedTask( |
| 162 this, request, failed_constraint)); | 162 this, request, failed_constraint)); |
| 163 return; | 163 return; |
| 164 } | 164 } |
| 165 | 165 |
| 166 const size_t zero = 0; | 166 const size_t zero = 0; |
| 167 const size_t one = 1; | 167 const size_t one = 1; |
| 168 WebVector<WebMediaStreamTrack> audio_tracks(request.audio() ? one : zero); | 168 WebVector<WebMediaStreamTrack> audio_tracks(request.audio() ? one : zero); |
| 169 WebVector<WebMediaStreamTrack> video_tracks(request.video() ? one : zero); | 169 WebVector<WebMediaStreamTrack> video_tracks(request.video() ? one : zero); |
| 170 | 170 |
| 171 if (request.audio()) { | 171 if (request.audio()) { |
| (...skipping 10 matching lines...) Expand all Loading... |
| 182 WebMediaStreamSource::TypeVideo, | 182 WebMediaStreamSource::TypeVideo, |
| 183 "Mock video device"); | 183 "Mock video device"); |
| 184 video_tracks[0].initialize(source); | 184 video_tracks[0].initialize(source); |
| 185 } | 185 } |
| 186 | 186 |
| 187 WebMediaStream stream; | 187 WebMediaStream stream; |
| 188 stream.initialize(audio_tracks, video_tracks); | 188 stream.initialize(audio_tracks, video_tracks); |
| 189 | 189 |
| 190 stream.setExtraData(new MockExtraData()); | 190 stream.setExtraData(new MockExtraData()); |
| 191 | 191 |
| 192 delegate_->postTask(new UserMediaRequestTask(this, request, stream)); | 192 delegate_->PostTask(new UserMediaRequestTask(this, request, stream)); |
| 193 } | 193 } |
| 194 | 194 |
| 195 void MockWebUserMediaClient::cancelUserMediaRequest( | 195 void MockWebUserMediaClient::cancelUserMediaRequest( |
| 196 const WebUserMediaRequest&) { | 196 const WebUserMediaRequest&) { |
| 197 } | 197 } |
| 198 | 198 |
| 199 void MockWebUserMediaClient::requestMediaDevices( | 199 void MockWebUserMediaClient::requestMediaDevices( |
| 200 const WebMediaDevicesRequest& request) { | 200 const WebMediaDevicesRequest& request) { |
| 201 struct { | 201 struct { |
| 202 const char* device_id; | 202 const char* device_id; |
| (...skipping 22 matching lines...) Expand all Loading... |
| 225 }; | 225 }; |
| 226 | 226 |
| 227 WebVector<WebMediaDeviceInfo> devices(ARRAYSIZE_UNSAFE(test_devices)); | 227 WebVector<WebMediaDeviceInfo> devices(ARRAYSIZE_UNSAFE(test_devices)); |
| 228 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_devices); ++i) { | 228 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_devices); ++i) { |
| 229 devices[i].initialize(WebString::fromUTF8(test_devices[i].device_id), | 229 devices[i].initialize(WebString::fromUTF8(test_devices[i].device_id), |
| 230 test_devices[i].kind, | 230 test_devices[i].kind, |
| 231 WebString::fromUTF8(test_devices[i].label), | 231 WebString::fromUTF8(test_devices[i].label), |
| 232 WebString::fromUTF8(test_devices[i].group_id)); | 232 WebString::fromUTF8(test_devices[i].group_id)); |
| 233 } | 233 } |
| 234 | 234 |
| 235 delegate_->postTask(new MediaDevicesRequestTask(this, request, devices)); | 235 delegate_->PostTask(new MediaDevicesRequestTask(this, request, devices)); |
| 236 } | 236 } |
| 237 | 237 |
| 238 void MockWebUserMediaClient::cancelMediaDevicesRequest( | 238 void MockWebUserMediaClient::cancelMediaDevicesRequest( |
| 239 const WebMediaDevicesRequest&) { | 239 const WebMediaDevicesRequest&) { |
| 240 } | 240 } |
| 241 | 241 |
| 242 void MockWebUserMediaClient::requestSources( | 242 void MockWebUserMediaClient::requestSources( |
| 243 const blink::WebMediaStreamTrackSourcesRequest& request) { | 243 const blink::WebMediaStreamTrackSourcesRequest& request) { |
| 244 struct { | 244 struct { |
| 245 const char* id; | 245 const char* id; |
| (...skipping 16 matching lines...) Expand all Loading... |
| 262 }; | 262 }; |
| 263 | 263 |
| 264 WebVector<WebSourceInfo> sources(ARRAYSIZE_UNSAFE(test_sources)); | 264 WebVector<WebSourceInfo> sources(ARRAYSIZE_UNSAFE(test_sources)); |
| 265 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_sources); ++i) { | 265 for (size_t i = 0; i < ARRAYSIZE_UNSAFE(test_sources); ++i) { |
| 266 sources[i].initialize(WebString::fromUTF8(test_sources[i].id), | 266 sources[i].initialize(WebString::fromUTF8(test_sources[i].id), |
| 267 test_sources[i].kind, | 267 test_sources[i].kind, |
| 268 WebString::fromUTF8(test_sources[i].label), | 268 WebString::fromUTF8(test_sources[i].label), |
| 269 test_sources[i].facing); | 269 test_sources[i].facing); |
| 270 } | 270 } |
| 271 | 271 |
| 272 delegate_->postTask(new SourcesRequestTask(this, request, sources)); | 272 delegate_->PostTask(new SourcesRequestTask(this, request, sources)); |
| 273 } | 273 } |
| 274 | 274 |
| 275 } // namespace content | 275 } // namespace content |
| OLD | NEW |