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/memory/scoped_ptr.h" | 5 #include "base/memory/scoped_ptr.h" |
6 #include "base/message_loop/message_loop.h" | 6 #include "base/message_loop/message_loop.h" |
7 #include "base/strings/utf_string_conversions.h" | 7 #include "base/strings/utf_string_conversions.h" |
8 #include "content/child/child_process.h" | 8 #include "content/child/child_process.h" |
9 #include "content/renderer/media/media_stream.h" | 9 #include "content/renderer/media/media_stream.h" |
10 #include "content/renderer/media/media_stream_impl.h" | 10 #include "content/renderer/media/media_stream_impl.h" |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 REQUEST_FAILED, | 43 REQUEST_FAILED, |
44 }; | 44 }; |
45 | 45 |
46 MediaStreamImplUnderTest( | 46 MediaStreamImplUnderTest( |
47 PeerConnectionDependencyFactory* dependency_factory, | 47 PeerConnectionDependencyFactory* dependency_factory, |
48 scoped_ptr<MediaStreamDispatcher> media_stream_dispatcher) | 48 scoped_ptr<MediaStreamDispatcher> media_stream_dispatcher) |
49 : MediaStreamImpl( | 49 : MediaStreamImpl( |
50 NULL, dependency_factory, media_stream_dispatcher.Pass()), | 50 NULL, dependency_factory, media_stream_dispatcher.Pass()), |
51 state_(REQUEST_NOT_STARTED), | 51 state_(REQUEST_NOT_STARTED), |
52 result_(NUM_MEDIA_REQUEST_RESULTS), | 52 result_(NUM_MEDIA_REQUEST_RESULTS), |
| 53 result_name_(""), |
53 factory_(dependency_factory), | 54 factory_(dependency_factory), |
54 video_source_(NULL) { | 55 video_source_(NULL) { |
55 } | 56 } |
56 | 57 |
57 void RequestUserMedia() { | 58 void RequestUserMedia() { |
58 blink::WebUserMediaRequest user_media_request; | 59 blink::WebUserMediaRequest user_media_request; |
59 state_ = REQUEST_NOT_COMPLETE; | 60 state_ = REQUEST_NOT_COMPLETE; |
60 requestUserMedia(user_media_request); | 61 requestUserMedia(user_media_request); |
61 } | 62 } |
62 | 63 |
(...skipping 11 matching lines...) Expand all Loading... |
74 } | 75 } |
75 | 76 |
76 virtual void GetUserMediaRequestFailed( | 77 virtual void GetUserMediaRequestFailed( |
77 blink::WebUserMediaRequest* request_info, | 78 blink::WebUserMediaRequest* request_info, |
78 content::MediaStreamRequestResult result) OVERRIDE { | 79 content::MediaStreamRequestResult result) OVERRIDE { |
79 last_generated_stream_.reset(); | 80 last_generated_stream_.reset(); |
80 state_ = REQUEST_FAILED; | 81 state_ = REQUEST_FAILED; |
81 result_ = result; | 82 result_ = result; |
82 } | 83 } |
83 | 84 |
| 85 virtual void GetUserMediaRequestTrackStartedFailed( |
| 86 blink::WebUserMediaRequest* request_info, |
| 87 MediaStreamRequestResult result, |
| 88 const blink::WebString& result_name) OVERRIDE { |
| 89 last_generated_stream_.reset(); |
| 90 state_ = REQUEST_FAILED; |
| 91 result_ = result; |
| 92 result_name_ = result_name; |
| 93 } |
| 94 |
84 virtual void EnumerateDevicesSucceded( | 95 virtual void EnumerateDevicesSucceded( |
85 blink::WebMediaDevicesRequest* request, | 96 blink::WebMediaDevicesRequest* request, |
86 blink::WebVector<blink::WebMediaDeviceInfo>& devices) OVERRIDE { | 97 blink::WebVector<blink::WebMediaDeviceInfo>& devices) OVERRIDE { |
87 state_ = REQUEST_SUCCEEDED; | 98 state_ = REQUEST_SUCCEEDED; |
88 last_devices_ = devices; | 99 last_devices_ = devices; |
89 } | 100 } |
90 | 101 |
91 virtual MediaStreamVideoSource* CreateVideoSource( | 102 virtual MediaStreamVideoSource* CreateVideoSource( |
92 const StreamDeviceInfo& device, | 103 const StreamDeviceInfo& device, |
93 const MediaStreamSource::SourceStoppedCallback& stop_callback) OVERRIDE { | 104 const MediaStreamSource::SourceStoppedCallback& stop_callback) OVERRIDE { |
(...skipping 14 matching lines...) Expand all Loading... |
108 void ClearLastGeneratedStream() { | 119 void ClearLastGeneratedStream() { |
109 last_generated_stream_.reset(); | 120 last_generated_stream_.reset(); |
110 } | 121 } |
111 | 122 |
112 MockMediaStreamVideoCapturerSource* last_created_video_source() const { | 123 MockMediaStreamVideoCapturerSource* last_created_video_source() const { |
113 return video_source_; | 124 return video_source_; |
114 } | 125 } |
115 | 126 |
116 RequestState request_state() const { return state_; } | 127 RequestState request_state() const { return state_; } |
117 content::MediaStreamRequestResult error_reason() const { return result_; } | 128 content::MediaStreamRequestResult error_reason() const { return result_; } |
| 129 blink::WebString error_name() const { return result_name_; } |
118 | 130 |
119 private: | 131 private: |
120 blink::WebMediaStream last_generated_stream_; | 132 blink::WebMediaStream last_generated_stream_; |
121 RequestState state_; | 133 RequestState state_; |
122 content::MediaStreamRequestResult result_; | 134 content::MediaStreamRequestResult result_; |
| 135 blink::WebString result_name_; |
123 blink::WebVector<blink::WebMediaDeviceInfo> last_devices_; | 136 blink::WebVector<blink::WebMediaDeviceInfo> last_devices_; |
124 PeerConnectionDependencyFactory* factory_; | 137 PeerConnectionDependencyFactory* factory_; |
125 MockMediaStreamVideoCapturerSource* video_source_; | 138 MockMediaStreamVideoCapturerSource* video_source_; |
126 }; | 139 }; |
127 | 140 |
128 class MediaStreamImplTest : public ::testing::Test { | 141 class MediaStreamImplTest : public ::testing::Test { |
129 public: | 142 public: |
130 virtual void SetUp() { | 143 virtual void SetUp() { |
131 // Create our test object. | 144 // Create our test object. |
132 child_process_.reset(new ChildProcess()); | 145 child_process_.reset(new ChildProcess()); |
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
466 EXPECT_FALSE(ms_impl_->last_devices()[3].groupId().isEmpty()); | 479 EXPECT_FALSE(ms_impl_->last_devices()[3].groupId().isEmpty()); |
467 | 480 |
468 // Verfify group IDs. | 481 // Verfify group IDs. |
469 EXPECT_TRUE(ms_impl_->last_devices()[0].groupId().equals( | 482 EXPECT_TRUE(ms_impl_->last_devices()[0].groupId().equals( |
470 ms_impl_->last_devices()[3].groupId())); | 483 ms_impl_->last_devices()[3].groupId())); |
471 EXPECT_FALSE(ms_impl_->last_devices()[1].groupId().equals( | 484 EXPECT_FALSE(ms_impl_->last_devices()[1].groupId().equals( |
472 ms_impl_->last_devices()[3].groupId())); | 485 ms_impl_->last_devices()[3].groupId())); |
473 } | 486 } |
474 | 487 |
475 } // namespace content | 488 } // namespace content |
OLD | NEW |