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/test_runner/mock_web_user_media_client.h" | 5 #include "content/shell/test_runner/mock_web_user_media_client.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/bind.h" | 9 #include "base/bind.h" |
10 #include "base/bind_helpers.h" | 10 #include "base/bind_helpers.h" |
(...skipping 15 matching lines...) Expand all Loading... |
26 using blink::WebMediaDevicesRequest; | 26 using blink::WebMediaDevicesRequest; |
27 using blink::WebMediaStream; | 27 using blink::WebMediaStream; |
28 using blink::WebMediaStreamSource; | 28 using blink::WebMediaStreamSource; |
29 using blink::WebMediaStreamTrack; | 29 using blink::WebMediaStreamTrack; |
30 using blink::WebString; | 30 using blink::WebString; |
31 using blink::WebUserMediaRequest; | 31 using blink::WebUserMediaRequest; |
32 using blink::WebVector; | 32 using blink::WebVector; |
33 | 33 |
34 namespace test_runner { | 34 namespace test_runner { |
35 | 35 |
36 class MockExtraData : public WebMediaStream::ExtraData {}; | |
37 | |
38 MockWebUserMediaClient::MockWebUserMediaClient(WebTestDelegate* delegate) | 36 MockWebUserMediaClient::MockWebUserMediaClient(WebTestDelegate* delegate) |
39 : delegate_(delegate), | 37 : delegate_(delegate), |
40 should_enumerate_extra_device_(false), | 38 should_enumerate_extra_device_(false), |
41 weak_factory_(this) {} | 39 weak_factory_(this) {} |
42 | 40 |
43 MockWebUserMediaClient::~MockWebUserMediaClient() {} | 41 MockWebUserMediaClient::~MockWebUserMediaClient() {} |
44 | 42 |
45 void MockWebUserMediaClient::RequestUserMedia( | 43 void MockWebUserMediaClient::RequestUserMedia( |
46 const WebUserMediaRequest& stream_request) { | 44 const WebUserMediaRequest& stream_request) { |
47 DCHECK(!stream_request.IsNull()); | 45 DCHECK(!stream_request.IsNull()); |
48 WebUserMediaRequest request = stream_request; | 46 WebUserMediaRequest request = stream_request; |
49 | 47 |
50 if (request.OwnerDocument().IsNull() || !request.OwnerDocument().GetFrame()) { | 48 if (request.OwnerDocument().IsNull() || !request.OwnerDocument().GetFrame()) { |
51 delegate_->PostTask( | 49 delegate_->PostTask( |
52 base::Bind(&WebUserMediaRequest::RequestFailed, | 50 base::Bind(&WebUserMediaRequest::RequestFailed, |
53 base::Owned(new WebUserMediaRequest(request)), WebString())); | 51 base::Owned(new WebUserMediaRequest(request)), WebString())); |
54 return; | 52 return; |
55 } | 53 } |
56 | 54 |
57 WebMediaStream stream; | 55 WebMediaStream stream; |
58 stream.Initialize(WebVector<WebMediaStreamTrack>(), | 56 stream.Initialize(WebVector<WebMediaStreamTrack>(), |
59 WebVector<WebMediaStreamTrack>()); | 57 WebVector<WebMediaStreamTrack>()); |
60 stream.SetExtraData(new MockExtraData()); | |
61 | 58 |
62 if (request.Audio() && | 59 if (request.Audio() && |
63 !delegate_->AddMediaStreamAudioSourceAndTrack(&stream)) { | 60 !delegate_->AddMediaStreamAudioSourceAndTrack(&stream)) { |
64 WebMediaStreamSource source; | 61 WebMediaStreamSource source; |
65 source.Initialize("MockAudioDevice#1", WebMediaStreamSource::kTypeAudio, | 62 source.Initialize("MockAudioDevice#1", WebMediaStreamSource::kTypeAudio, |
66 "Mock audio device", false /* remote */); | 63 "Mock audio device", false /* remote */); |
67 WebMediaStreamTrack web_track; | 64 WebMediaStreamTrack web_track; |
68 web_track.Initialize(source); | 65 web_track.Initialize(source); |
69 stream.AddTrack(web_track); | 66 stream.AddTrack(web_track); |
70 } | 67 } |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
132 if (!media_device_change_observer_.IsNull()) | 129 if (!media_device_change_observer_.IsNull()) |
133 media_device_change_observer_.DidChangeMediaDevices(); | 130 media_device_change_observer_.DidChangeMediaDevices(); |
134 } | 131 } |
135 | 132 |
136 void MockWebUserMediaClient::SetMediaDeviceChangeObserver( | 133 void MockWebUserMediaClient::SetMediaDeviceChangeObserver( |
137 const blink::WebMediaDeviceChangeObserver& observer) { | 134 const blink::WebMediaDeviceChangeObserver& observer) { |
138 media_device_change_observer_ = observer; | 135 media_device_change_observer_ = observer; |
139 } | 136 } |
140 | 137 |
141 } // namespace test_runner | 138 } // namespace test_runner |
OLD | NEW |