Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(75)

Side by Side Diff: content/renderer/media/rtc_peer_connection_handler_unittest.cc

Issue 63253002: Rename WebKit namespace to blink (part 3) (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
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 <string> 5 #include <string>
6 #include <vector> 6 #include <vector>
7 7
8 #include "base/memory/scoped_ptr.h" 8 #include "base/memory/scoped_ptr.h"
9 #include "base/strings/utf_string_conversions.h" 9 #include "base/strings/utf_string_conversions.h"
10 #include "base/values.h" 10 #include "base/values.h"
(...skipping 20 matching lines...) Expand all
31 #include "third_party/WebKit/public/platform/WebRTCSessionDescription.h" 31 #include "third_party/WebKit/public/platform/WebRTCSessionDescription.h"
32 #include "third_party/WebKit/public/platform/WebRTCSessionDescriptionRequest.h" 32 #include "third_party/WebKit/public/platform/WebRTCSessionDescriptionRequest.h"
33 #include "third_party/WebKit/public/platform/WebRTCStatsRequest.h" 33 #include "third_party/WebKit/public/platform/WebRTCStatsRequest.h"
34 #include "third_party/WebKit/public/platform/WebRTCVoidRequest.h" 34 #include "third_party/WebKit/public/platform/WebRTCVoidRequest.h"
35 #include "third_party/WebKit/public/platform/WebURL.h" 35 #include "third_party/WebKit/public/platform/WebURL.h"
36 #include "third_party/libjingle/source/talk/app/webrtc/peerconnectioninterface.h " 36 #include "third_party/libjingle/source/talk/app/webrtc/peerconnectioninterface.h "
37 37
38 static const char kDummySdp[] = "dummy sdp"; 38 static const char kDummySdp[] = "dummy sdp";
39 static const char kDummySdpType[] = "dummy type"; 39 static const char kDummySdpType[] = "dummy type";
40 40
41 using WebKit::WebRTCPeerConnectionHandlerClient; 41 using blink::WebRTCPeerConnectionHandlerClient;
42 using testing::NiceMock; 42 using testing::NiceMock;
43 using testing::_; 43 using testing::_;
44 using testing::Ref; 44 using testing::Ref;
45 45
46 namespace content { 46 namespace content {
47 47
48 class MockRTCStatsResponse : public LocalRTCStatsResponse { 48 class MockRTCStatsResponse : public LocalRTCStatsResponse {
49 public: 49 public:
50 MockRTCStatsResponse() 50 MockRTCStatsResponse()
51 : report_count_(0), 51 : report_count_(0),
52 statistic_count_(0) { 52 statistic_count_(0) {
53 } 53 }
54 54
55 virtual size_t addReport(WebKit::WebString type, 55 virtual size_t addReport(blink::WebString type,
56 WebKit::WebString id, 56 blink::WebString id,
57 double timestamp) OVERRIDE { 57 double timestamp) OVERRIDE {
58 ++report_count_; 58 ++report_count_;
59 return report_count_; 59 return report_count_;
60 } 60 }
61 61
62 virtual void addStatistic(size_t report, 62 virtual void addStatistic(size_t report,
63 WebKit::WebString name, WebKit::WebString value) 63 blink::WebString name, blink::WebString value)
64 OVERRIDE { 64 OVERRIDE {
65 ++statistic_count_; 65 ++statistic_count_;
66 } 66 }
67 int report_count() const { return report_count_; } 67 int report_count() const { return report_count_; }
68 68
69 private: 69 private:
70 int report_count_; 70 int report_count_;
71 int statistic_count_; 71 int statistic_count_;
72 }; 72 };
73 73
74 // Mocked wrapper for WebKit::WebRTCStatsRequest 74 // Mocked wrapper for blink::WebRTCStatsRequest
75 class MockRTCStatsRequest : public LocalRTCStatsRequest { 75 class MockRTCStatsRequest : public LocalRTCStatsRequest {
76 public: 76 public:
77 MockRTCStatsRequest() 77 MockRTCStatsRequest()
78 : has_selector_(false), 78 : has_selector_(false),
79 request_succeeded_called_(false) {} 79 request_succeeded_called_(false) {}
80 80
81 virtual bool hasSelector() const OVERRIDE { 81 virtual bool hasSelector() const OVERRIDE {
82 return has_selector_; 82 return has_selector_;
83 } 83 }
84 virtual WebKit::WebMediaStreamTrack component() const OVERRIDE { 84 virtual blink::WebMediaStreamTrack component() const OVERRIDE {
85 return component_; 85 return component_;
86 } 86 }
87 virtual scoped_refptr<LocalRTCStatsResponse> createResponse() OVERRIDE { 87 virtual scoped_refptr<LocalRTCStatsResponse> createResponse() OVERRIDE {
88 DCHECK(!response_.get()); 88 DCHECK(!response_.get());
89 response_ = new talk_base::RefCountedObject<MockRTCStatsResponse>(); 89 response_ = new talk_base::RefCountedObject<MockRTCStatsResponse>();
90 return response_; 90 return response_;
91 } 91 }
92 92
93 virtual void requestSucceeded(const LocalRTCStatsResponse* response) 93 virtual void requestSucceeded(const LocalRTCStatsResponse* response)
94 OVERRIDE { 94 OVERRIDE {
95 EXPECT_EQ(response, response_.get()); 95 EXPECT_EQ(response, response_.get());
96 request_succeeded_called_ = true; 96 request_succeeded_called_ = true;
97 } 97 }
98 98
99 // Function for setting whether or not a selector is available. 99 // Function for setting whether or not a selector is available.
100 void setSelector(const WebKit::WebMediaStreamTrack& component) { 100 void setSelector(const blink::WebMediaStreamTrack& component) {
101 has_selector_ = true; 101 has_selector_ = true;
102 component_ = component; 102 component_ = component;
103 } 103 }
104 104
105 // Function for inspecting the result of a stats request. 105 // Function for inspecting the result of a stats request.
106 MockRTCStatsResponse* result() { 106 MockRTCStatsResponse* result() {
107 if (request_succeeded_called_) { 107 if (request_succeeded_called_) {
108 return response_.get(); 108 return response_.get();
109 } else { 109 } else {
110 return NULL; 110 return NULL;
111 } 111 }
112 } 112 }
113 113
114 private: 114 private:
115 bool has_selector_; 115 bool has_selector_;
116 WebKit::WebMediaStreamTrack component_; 116 blink::WebMediaStreamTrack component_;
117 scoped_refptr<MockRTCStatsResponse> response_; 117 scoped_refptr<MockRTCStatsResponse> response_;
118 bool request_succeeded_called_; 118 bool request_succeeded_called_;
119 }; 119 };
120 120
121 class MockPeerConnectionTracker : public PeerConnectionTracker { 121 class MockPeerConnectionTracker : public PeerConnectionTracker {
122 public: 122 public:
123 MOCK_METHOD1(UnregisterPeerConnection, 123 MOCK_METHOD1(UnregisterPeerConnection,
124 void(RTCPeerConnectionHandler* pc_handler)); 124 void(RTCPeerConnectionHandler* pc_handler));
125 // TODO(jiayl): add coverage for the following methods 125 // TODO(jiayl): add coverage for the following methods
126 MOCK_METHOD2(TrackCreateOffer, 126 MOCK_METHOD2(TrackCreateOffer,
127 void(RTCPeerConnectionHandler* pc_handler, 127 void(RTCPeerConnectionHandler* pc_handler,
128 const RTCMediaConstraints& constraints)); 128 const RTCMediaConstraints& constraints));
129 MOCK_METHOD2(TrackCreateAnswer, 129 MOCK_METHOD2(TrackCreateAnswer,
130 void(RTCPeerConnectionHandler* pc_handler, 130 void(RTCPeerConnectionHandler* pc_handler,
131 const RTCMediaConstraints& constraints)); 131 const RTCMediaConstraints& constraints));
132 MOCK_METHOD3(TrackSetSessionDescription, 132 MOCK_METHOD3(TrackSetSessionDescription,
133 void(RTCPeerConnectionHandler* pc_handler, 133 void(RTCPeerConnectionHandler* pc_handler,
134 const WebKit::WebRTCSessionDescription& desc, 134 const blink::WebRTCSessionDescription& desc,
135 Source source)); 135 Source source));
136 MOCK_METHOD3( 136 MOCK_METHOD3(
137 TrackUpdateIce, 137 TrackUpdateIce,
138 void(RTCPeerConnectionHandler* pc_handler, 138 void(RTCPeerConnectionHandler* pc_handler,
139 const std::vector< 139 const std::vector<
140 webrtc::PeerConnectionInterface::IceServer>& servers, 140 webrtc::PeerConnectionInterface::IceServer>& servers,
141 const RTCMediaConstraints& options)); 141 const RTCMediaConstraints& options));
142 MOCK_METHOD3(TrackAddIceCandidate, 142 MOCK_METHOD3(TrackAddIceCandidate,
143 void(RTCPeerConnectionHandler* pc_handler, 143 void(RTCPeerConnectionHandler* pc_handler,
144 const WebKit::WebRTCICECandidate& candidate, 144 const blink::WebRTCICECandidate& candidate,
145 Source source)); 145 Source source));
146 MOCK_METHOD3(TrackAddStream, 146 MOCK_METHOD3(TrackAddStream,
147 void(RTCPeerConnectionHandler* pc_handler, 147 void(RTCPeerConnectionHandler* pc_handler,
148 const WebKit::WebMediaStream& stream, 148 const blink::WebMediaStream& stream,
149 Source source)); 149 Source source));
150 MOCK_METHOD3(TrackRemoveStream, 150 MOCK_METHOD3(TrackRemoveStream,
151 void(RTCPeerConnectionHandler* pc_handler, 151 void(RTCPeerConnectionHandler* pc_handler,
152 const WebKit::WebMediaStream& stream, 152 const blink::WebMediaStream& stream,
153 Source source)); 153 Source source));
154 MOCK_METHOD1(TrackOnIceComplete, 154 MOCK_METHOD1(TrackOnIceComplete,
155 void(RTCPeerConnectionHandler* pc_handler)); 155 void(RTCPeerConnectionHandler* pc_handler));
156 MOCK_METHOD3(TrackCreateDataChannel, 156 MOCK_METHOD3(TrackCreateDataChannel,
157 void(RTCPeerConnectionHandler* pc_handler, 157 void(RTCPeerConnectionHandler* pc_handler,
158 const webrtc::DataChannelInterface* data_channel, 158 const webrtc::DataChannelInterface* data_channel,
159 Source source)); 159 Source source));
160 MOCK_METHOD1(TrackStop, void(RTCPeerConnectionHandler* pc_handler)); 160 MOCK_METHOD1(TrackStop, void(RTCPeerConnectionHandler* pc_handler));
161 MOCK_METHOD2(TrackSignalingStateChange, 161 MOCK_METHOD2(TrackSignalingStateChange,
162 void(RTCPeerConnectionHandler* pc_handler, 162 void(RTCPeerConnectionHandler* pc_handler,
163 WebRTCPeerConnectionHandlerClient::SignalingState state)); 163 WebRTCPeerConnectionHandlerClient::SignalingState state));
164 MOCK_METHOD2( 164 MOCK_METHOD2(
165 TrackIceConnectionStateChange, 165 TrackIceConnectionStateChange,
166 void(RTCPeerConnectionHandler* pc_handler, 166 void(RTCPeerConnectionHandler* pc_handler,
167 WebRTCPeerConnectionHandlerClient::ICEConnectionState state)); 167 WebRTCPeerConnectionHandlerClient::ICEConnectionState state));
168 MOCK_METHOD2( 168 MOCK_METHOD2(
169 TrackIceGatheringStateChange, 169 TrackIceGatheringStateChange,
170 void(RTCPeerConnectionHandler* pc_handler, 170 void(RTCPeerConnectionHandler* pc_handler,
171 WebRTCPeerConnectionHandlerClient::ICEGatheringState state)); 171 WebRTCPeerConnectionHandlerClient::ICEGatheringState state));
172 MOCK_METHOD1(TrackOnRenegotiationNeeded, 172 MOCK_METHOD1(TrackOnRenegotiationNeeded,
173 void(RTCPeerConnectionHandler* pc_handler)); 173 void(RTCPeerConnectionHandler* pc_handler));
174 MOCK_METHOD2(TrackCreateDTMFSender, 174 MOCK_METHOD2(TrackCreateDTMFSender,
175 void(RTCPeerConnectionHandler* pc_handler, 175 void(RTCPeerConnectionHandler* pc_handler,
176 const WebKit::WebMediaStreamTrack& track)); 176 const blink::WebMediaStreamTrack& track));
177 }; 177 };
178 178
179 class RTCPeerConnectionHandlerUnderTest : public RTCPeerConnectionHandler { 179 class RTCPeerConnectionHandlerUnderTest : public RTCPeerConnectionHandler {
180 public: 180 public:
181 RTCPeerConnectionHandlerUnderTest( 181 RTCPeerConnectionHandlerUnderTest(
182 WebRTCPeerConnectionHandlerClient* client, 182 WebRTCPeerConnectionHandlerClient* client,
183 MediaStreamDependencyFactory* dependency_factory) 183 MediaStreamDependencyFactory* dependency_factory)
184 : RTCPeerConnectionHandler(client, dependency_factory) { 184 : RTCPeerConnectionHandler(client, dependency_factory) {
185 } 185 }
186 186
187 MockPeerConnectionImpl* native_peer_connection() { 187 MockPeerConnectionImpl* native_peer_connection() {
188 return static_cast<MockPeerConnectionImpl*>(native_peer_connection_.get()); 188 return static_cast<MockPeerConnectionImpl*>(native_peer_connection_.get());
189 } 189 }
190 }; 190 };
191 191
192 class RTCPeerConnectionHandlerTest : public ::testing::Test { 192 class RTCPeerConnectionHandlerTest : public ::testing::Test {
193 public: 193 public:
194 RTCPeerConnectionHandlerTest() : mock_peer_connection_(NULL) { 194 RTCPeerConnectionHandlerTest() : mock_peer_connection_(NULL) {
195 } 195 }
196 196
197 virtual void SetUp() { 197 virtual void SetUp() {
198 mock_client_.reset(new NiceMock<MockWebRTCPeerConnectionHandlerClient>()); 198 mock_client_.reset(new NiceMock<MockWebRTCPeerConnectionHandlerClient>());
199 mock_dependency_factory_.reset(new MockMediaStreamDependencyFactory()); 199 mock_dependency_factory_.reset(new MockMediaStreamDependencyFactory());
200 mock_dependency_factory_->EnsurePeerConnectionFactory(); 200 mock_dependency_factory_->EnsurePeerConnectionFactory();
201 pc_handler_.reset( 201 pc_handler_.reset(
202 new RTCPeerConnectionHandlerUnderTest(mock_client_.get(), 202 new RTCPeerConnectionHandlerUnderTest(mock_client_.get(),
203 mock_dependency_factory_.get())); 203 mock_dependency_factory_.get()));
204 mock_tracker_.reset(new NiceMock<MockPeerConnectionTracker>()); 204 mock_tracker_.reset(new NiceMock<MockPeerConnectionTracker>());
205 WebKit::WebRTCConfiguration config; 205 blink::WebRTCConfiguration config;
206 WebKit::WebMediaConstraints constraints; 206 blink::WebMediaConstraints constraints;
207 EXPECT_TRUE(pc_handler_->InitializeForTest(config, constraints, 207 EXPECT_TRUE(pc_handler_->InitializeForTest(config, constraints,
208 mock_tracker_.get())); 208 mock_tracker_.get()));
209 209
210 mock_peer_connection_ = pc_handler_->native_peer_connection(); 210 mock_peer_connection_ = pc_handler_->native_peer_connection();
211 ASSERT_TRUE(mock_peer_connection_); 211 ASSERT_TRUE(mock_peer_connection_);
212 } 212 }
213 213
214 // Creates a WebKit local MediaStream. 214 // Creates a WebKit local MediaStream.
215 WebKit::WebMediaStream CreateLocalMediaStream( 215 blink::WebMediaStream CreateLocalMediaStream(
216 const std::string& stream_label) { 216 const std::string& stream_label) {
217 std::string video_track_label("video-label"); 217 std::string video_track_label("video-label");
218 std::string audio_track_label("audio-label"); 218 std::string audio_track_label("audio-label");
219 219
220 WebKit::WebMediaStreamSource audio_source; 220 blink::WebMediaStreamSource audio_source;
221 audio_source.initialize(WebKit::WebString::fromUTF8(audio_track_label), 221 audio_source.initialize(blink::WebString::fromUTF8(audio_track_label),
222 WebKit::WebMediaStreamSource::TypeAudio, 222 blink::WebMediaStreamSource::TypeAudio,
223 WebKit::WebString::fromUTF8("audio_track")); 223 blink::WebString::fromUTF8("audio_track"));
224 WebKit::WebMediaStreamSource video_source; 224 blink::WebMediaStreamSource video_source;
225 video_source.initialize(WebKit::WebString::fromUTF8(video_track_label), 225 video_source.initialize(blink::WebString::fromUTF8(video_track_label),
226 WebKit::WebMediaStreamSource::TypeVideo, 226 blink::WebMediaStreamSource::TypeVideo,
227 WebKit::WebString::fromUTF8("video_track")); 227 blink::WebString::fromUTF8("video_track"));
228 228
229 WebKit::WebVector<WebKit::WebMediaStreamTrack> audio_tracks( 229 blink::WebVector<blink::WebMediaStreamTrack> audio_tracks(
230 static_cast<size_t>(1)); 230 static_cast<size_t>(1));
231 audio_tracks[0].initialize(audio_source.id(), audio_source); 231 audio_tracks[0].initialize(audio_source.id(), audio_source);
232 WebKit::WebVector<WebKit::WebMediaStreamTrack> video_tracks( 232 blink::WebVector<blink::WebMediaStreamTrack> video_tracks(
233 static_cast<size_t>(1)); 233 static_cast<size_t>(1));
234 video_tracks[0].initialize(video_source.id(), video_source); 234 video_tracks[0].initialize(video_source.id(), video_source);
235 235
236 WebKit::WebMediaStream local_stream; 236 blink::WebMediaStream local_stream;
237 local_stream.initialize(UTF8ToUTF16(stream_label), audio_tracks, 237 local_stream.initialize(UTF8ToUTF16(stream_label), audio_tracks,
238 video_tracks); 238 video_tracks);
239 239
240 scoped_refptr<webrtc::MediaStreamInterface> native_stream( 240 scoped_refptr<webrtc::MediaStreamInterface> native_stream(
241 mock_dependency_factory_->CreateLocalMediaStream(stream_label)); 241 mock_dependency_factory_->CreateLocalMediaStream(stream_label));
242 242
243 local_stream.audioTracks(audio_tracks); 243 local_stream.audioTracks(audio_tracks);
244 const std::string audio_track_id = UTF16ToUTF8(audio_tracks[0].id()); 244 const std::string audio_track_id = UTF16ToUTF8(audio_tracks[0].id());
245 scoped_refptr<WebRtcAudioCapturer> capturer; 245 scoped_refptr<WebRtcAudioCapturer> capturer;
246 RTCMediaConstraints audio_constraints(audio_source.constraints()); 246 RTCMediaConstraints audio_constraints(audio_source.constraints());
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
305 MockPeerConnectionImpl* mock_peer_connection_; 305 MockPeerConnectionImpl* mock_peer_connection_;
306 }; 306 };
307 307
308 TEST_F(RTCPeerConnectionHandlerTest, Destruct) { 308 TEST_F(RTCPeerConnectionHandlerTest, Destruct) {
309 EXPECT_CALL(*mock_tracker_.get(), UnregisterPeerConnection(pc_handler_.get())) 309 EXPECT_CALL(*mock_tracker_.get(), UnregisterPeerConnection(pc_handler_.get()))
310 .Times(1); 310 .Times(1);
311 pc_handler_.reset(NULL); 311 pc_handler_.reset(NULL);
312 } 312 }
313 313
314 TEST_F(RTCPeerConnectionHandlerTest, CreateOffer) { 314 TEST_F(RTCPeerConnectionHandlerTest, CreateOffer) {
315 WebKit::WebRTCSessionDescriptionRequest request; 315 blink::WebRTCSessionDescriptionRequest request;
316 WebKit::WebMediaConstraints options; 316 blink::WebMediaConstraints options;
317 EXPECT_CALL(*mock_tracker_.get(), TrackCreateOffer(pc_handler_.get(), _)); 317 EXPECT_CALL(*mock_tracker_.get(), TrackCreateOffer(pc_handler_.get(), _));
318 318
319 // TODO(perkj): Can WebKit::WebRTCSessionDescriptionRequest be changed so 319 // TODO(perkj): Can blink::WebRTCSessionDescriptionRequest be changed so
320 // the |reqest| requestSucceeded can be tested? Currently the |request| object 320 // the |reqest| requestSucceeded can be tested? Currently the |request| object
321 // can not be initialized from a unit test. 321 // can not be initialized from a unit test.
322 EXPECT_FALSE(mock_peer_connection_->created_session_description() != NULL); 322 EXPECT_FALSE(mock_peer_connection_->created_session_description() != NULL);
323 pc_handler_->createOffer(request, options); 323 pc_handler_->createOffer(request, options);
324 EXPECT_TRUE(mock_peer_connection_->created_session_description() != NULL); 324 EXPECT_TRUE(mock_peer_connection_->created_session_description() != NULL);
325 } 325 }
326 326
327 TEST_F(RTCPeerConnectionHandlerTest, CreateAnswer) { 327 TEST_F(RTCPeerConnectionHandlerTest, CreateAnswer) {
328 WebKit::WebRTCSessionDescriptionRequest request; 328 blink::WebRTCSessionDescriptionRequest request;
329 WebKit::WebMediaConstraints options; 329 blink::WebMediaConstraints options;
330 EXPECT_CALL(*mock_tracker_.get(), TrackCreateAnswer(pc_handler_.get(), _)); 330 EXPECT_CALL(*mock_tracker_.get(), TrackCreateAnswer(pc_handler_.get(), _));
331 // TODO(perkj): Can WebKit::WebRTCSessionDescriptionRequest be changed so 331 // TODO(perkj): Can blink::WebRTCSessionDescriptionRequest be changed so
332 // the |reqest| requestSucceeded can be tested? Currently the |request| object 332 // the |reqest| requestSucceeded can be tested? Currently the |request| object
333 // can not be initialized from a unit test. 333 // can not be initialized from a unit test.
334 EXPECT_FALSE(mock_peer_connection_->created_session_description() != NULL); 334 EXPECT_FALSE(mock_peer_connection_->created_session_description() != NULL);
335 pc_handler_->createAnswer(request, options); 335 pc_handler_->createAnswer(request, options);
336 EXPECT_TRUE(mock_peer_connection_->created_session_description() != NULL); 336 EXPECT_TRUE(mock_peer_connection_->created_session_description() != NULL);
337 } 337 }
338 338
339 TEST_F(RTCPeerConnectionHandlerTest, setLocalDescription) { 339 TEST_F(RTCPeerConnectionHandlerTest, setLocalDescription) {
340 WebKit::WebRTCVoidRequest request; 340 blink::WebRTCVoidRequest request;
341 WebKit::WebRTCSessionDescription description; 341 blink::WebRTCSessionDescription description;
342 description.initialize(kDummySdpType, kDummySdp); 342 description.initialize(kDummySdpType, kDummySdp);
343 // PeerConnectionTracker::TrackSetSessionDescription is expected to be called 343 // PeerConnectionTracker::TrackSetSessionDescription is expected to be called
344 // before |mock_peer_connection| is called. 344 // before |mock_peer_connection| is called.
345 testing::InSequence sequence; 345 testing::InSequence sequence;
346 EXPECT_CALL(*mock_tracker_.get(), 346 EXPECT_CALL(*mock_tracker_.get(),
347 TrackSetSessionDescription(pc_handler_.get(), Ref(description), 347 TrackSetSessionDescription(pc_handler_.get(), Ref(description),
348 PeerConnectionTracker::SOURCE_LOCAL)); 348 PeerConnectionTracker::SOURCE_LOCAL));
349 EXPECT_CALL(*mock_peer_connection_, SetLocalDescription(_, _)); 349 EXPECT_CALL(*mock_peer_connection_, SetLocalDescription(_, _));
350 350
351 pc_handler_->setLocalDescription(request, description); 351 pc_handler_->setLocalDescription(request, description);
352 EXPECT_EQ(description.type(), pc_handler_->localDescription().type()); 352 EXPECT_EQ(description.type(), pc_handler_->localDescription().type());
353 EXPECT_EQ(description.sdp(), pc_handler_->localDescription().sdp()); 353 EXPECT_EQ(description.sdp(), pc_handler_->localDescription().sdp());
354 354
355 std::string sdp_string; 355 std::string sdp_string;
356 ASSERT_TRUE(mock_peer_connection_->local_description() != NULL); 356 ASSERT_TRUE(mock_peer_connection_->local_description() != NULL);
357 EXPECT_EQ(kDummySdpType, mock_peer_connection_->local_description()->type()); 357 EXPECT_EQ(kDummySdpType, mock_peer_connection_->local_description()->type());
358 mock_peer_connection_->local_description()->ToString(&sdp_string); 358 mock_peer_connection_->local_description()->ToString(&sdp_string);
359 EXPECT_EQ(kDummySdp, sdp_string); 359 EXPECT_EQ(kDummySdp, sdp_string);
360 } 360 }
361 361
362 TEST_F(RTCPeerConnectionHandlerTest, setRemoteDescription) { 362 TEST_F(RTCPeerConnectionHandlerTest, setRemoteDescription) {
363 WebKit::WebRTCVoidRequest request; 363 blink::WebRTCVoidRequest request;
364 WebKit::WebRTCSessionDescription description; 364 blink::WebRTCSessionDescription description;
365 description.initialize(kDummySdpType, kDummySdp); 365 description.initialize(kDummySdpType, kDummySdp);
366 366
367 // PeerConnectionTracker::TrackSetSessionDescription is expected to be called 367 // PeerConnectionTracker::TrackSetSessionDescription is expected to be called
368 // before |mock_peer_connection| is called. 368 // before |mock_peer_connection| is called.
369 testing::InSequence sequence; 369 testing::InSequence sequence;
370 EXPECT_CALL(*mock_tracker_.get(), 370 EXPECT_CALL(*mock_tracker_.get(),
371 TrackSetSessionDescription(pc_handler_.get(), Ref(description), 371 TrackSetSessionDescription(pc_handler_.get(), Ref(description),
372 PeerConnectionTracker::SOURCE_REMOTE)); 372 PeerConnectionTracker::SOURCE_REMOTE));
373 EXPECT_CALL(*mock_peer_connection_, SetRemoteDescription(_, _)); 373 EXPECT_CALL(*mock_peer_connection_, SetRemoteDescription(_, _));
374 374
375 pc_handler_->setRemoteDescription(request, description); 375 pc_handler_->setRemoteDescription(request, description);
376 EXPECT_EQ(description.type(), pc_handler_->remoteDescription().type()); 376 EXPECT_EQ(description.type(), pc_handler_->remoteDescription().type());
377 EXPECT_EQ(description.sdp(), pc_handler_->remoteDescription().sdp()); 377 EXPECT_EQ(description.sdp(), pc_handler_->remoteDescription().sdp());
378 378
379 std::string sdp_string; 379 std::string sdp_string;
380 ASSERT_TRUE(mock_peer_connection_->remote_description() != NULL); 380 ASSERT_TRUE(mock_peer_connection_->remote_description() != NULL);
381 EXPECT_EQ(kDummySdpType, mock_peer_connection_->remote_description()->type()); 381 EXPECT_EQ(kDummySdpType, mock_peer_connection_->remote_description()->type());
382 mock_peer_connection_->remote_description()->ToString(&sdp_string); 382 mock_peer_connection_->remote_description()->ToString(&sdp_string);
383 EXPECT_EQ(kDummySdp, sdp_string); 383 EXPECT_EQ(kDummySdp, sdp_string);
384 } 384 }
385 385
386 TEST_F(RTCPeerConnectionHandlerTest, updateICE) { 386 TEST_F(RTCPeerConnectionHandlerTest, updateICE) {
387 WebKit::WebRTCConfiguration config; 387 blink::WebRTCConfiguration config;
388 WebKit::WebMediaConstraints constraints; 388 blink::WebMediaConstraints constraints;
389 389
390 EXPECT_CALL(*mock_tracker_.get(), TrackUpdateIce(pc_handler_.get(), _, _)); 390 EXPECT_CALL(*mock_tracker_.get(), TrackUpdateIce(pc_handler_.get(), _, _));
391 // TODO(perkj): Test that the parameters in |config| can be translated when a 391 // TODO(perkj): Test that the parameters in |config| can be translated when a
392 // WebRTCConfiguration can be constructed. It's WebKit class and can't be 392 // WebRTCConfiguration can be constructed. It's WebKit class and can't be
393 // initialized from a test. 393 // initialized from a test.
394 EXPECT_TRUE(pc_handler_->updateICE(config, constraints)); 394 EXPECT_TRUE(pc_handler_->updateICE(config, constraints));
395 } 395 }
396 396
397 TEST_F(RTCPeerConnectionHandlerTest, addICECandidate) { 397 TEST_F(RTCPeerConnectionHandlerTest, addICECandidate) {
398 WebKit::WebRTCICECandidate candidate; 398 blink::WebRTCICECandidate candidate;
399 candidate.initialize(kDummySdp, "mid", 1); 399 candidate.initialize(kDummySdp, "mid", 1);
400 400
401 EXPECT_CALL(*mock_tracker_.get(), 401 EXPECT_CALL(*mock_tracker_.get(),
402 TrackAddIceCandidate(pc_handler_.get(), 402 TrackAddIceCandidate(pc_handler_.get(),
403 testing::Ref(candidate), 403 testing::Ref(candidate),
404 PeerConnectionTracker::SOURCE_REMOTE)); 404 PeerConnectionTracker::SOURCE_REMOTE));
405 EXPECT_TRUE(pc_handler_->addICECandidate(candidate)); 405 EXPECT_TRUE(pc_handler_->addICECandidate(candidate));
406 EXPECT_EQ(kDummySdp, mock_peer_connection_->ice_sdp()); 406 EXPECT_EQ(kDummySdp, mock_peer_connection_->ice_sdp());
407 EXPECT_EQ(1, mock_peer_connection_->sdp_mline_index()); 407 EXPECT_EQ(1, mock_peer_connection_->sdp_mline_index());
408 EXPECT_EQ("mid", mock_peer_connection_->sdp_mid()); 408 EXPECT_EQ("mid", mock_peer_connection_->sdp_mid());
409 } 409 }
410 410
411 TEST_F(RTCPeerConnectionHandlerTest, addAndRemoveStream) { 411 TEST_F(RTCPeerConnectionHandlerTest, addAndRemoveStream) {
412 std::string stream_label = "local_stream"; 412 std::string stream_label = "local_stream";
413 WebKit::WebMediaStream local_stream( 413 blink::WebMediaStream local_stream(
414 CreateLocalMediaStream(stream_label)); 414 CreateLocalMediaStream(stream_label));
415 WebKit::WebMediaConstraints constraints; 415 blink::WebMediaConstraints constraints;
416 416
417 EXPECT_CALL(*mock_tracker_.get(), 417 EXPECT_CALL(*mock_tracker_.get(),
418 TrackAddStream(pc_handler_.get(), 418 TrackAddStream(pc_handler_.get(),
419 testing::Ref(local_stream), 419 testing::Ref(local_stream),
420 PeerConnectionTracker::SOURCE_LOCAL)); 420 PeerConnectionTracker::SOURCE_LOCAL));
421 EXPECT_CALL(*mock_tracker_.get(), 421 EXPECT_CALL(*mock_tracker_.get(),
422 TrackRemoveStream(pc_handler_.get(), 422 TrackRemoveStream(pc_handler_.get(),
423 testing::Ref(local_stream), 423 testing::Ref(local_stream),
424 PeerConnectionTracker::SOURCE_LOCAL)); 424 PeerConnectionTracker::SOURCE_LOCAL));
425 EXPECT_TRUE(pc_handler_->addStream(local_stream, constraints)); 425 EXPECT_TRUE(pc_handler_->addStream(local_stream, constraints));
(...skipping 20 matching lines...) Expand all
446 scoped_refptr<MockRTCStatsRequest> request( 446 scoped_refptr<MockRTCStatsRequest> request(
447 new talk_base::RefCountedObject<MockRTCStatsRequest>()); 447 new talk_base::RefCountedObject<MockRTCStatsRequest>());
448 pc_handler_->stop(); 448 pc_handler_->stop();
449 pc_handler_->getStats(request.get()); 449 pc_handler_->getStats(request.get());
450 // Note that callback gets executed synchronously by mock. 450 // Note that callback gets executed synchronously by mock.
451 ASSERT_TRUE(request->result()); 451 ASSERT_TRUE(request->result());
452 EXPECT_LT(1, request->result()->report_count()); 452 EXPECT_LT(1, request->result()->report_count());
453 } 453 }
454 454
455 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithLocalSelector) { 455 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithLocalSelector) {
456 WebKit::WebMediaStream local_stream( 456 blink::WebMediaStream local_stream(
457 CreateLocalMediaStream("local_stream")); 457 CreateLocalMediaStream("local_stream"));
458 WebKit::WebMediaConstraints constraints; 458 blink::WebMediaConstraints constraints;
459 pc_handler_->addStream(local_stream, constraints); 459 pc_handler_->addStream(local_stream, constraints);
460 WebKit::WebVector<WebKit::WebMediaStreamTrack> tracks; 460 blink::WebVector<blink::WebMediaStreamTrack> tracks;
461 local_stream.audioTracks(tracks); 461 local_stream.audioTracks(tracks);
462 ASSERT_LE(1ul, tracks.size()); 462 ASSERT_LE(1ul, tracks.size());
463 463
464 scoped_refptr<MockRTCStatsRequest> request( 464 scoped_refptr<MockRTCStatsRequest> request(
465 new talk_base::RefCountedObject<MockRTCStatsRequest>()); 465 new talk_base::RefCountedObject<MockRTCStatsRequest>());
466 request->setSelector(tracks[0]); 466 request->setSelector(tracks[0]);
467 pc_handler_->getStats(request.get()); 467 pc_handler_->getStats(request.get());
468 EXPECT_EQ(1, request->result()->report_count()); 468 EXPECT_EQ(1, request->result()->report_count());
469 } 469 }
470 470
471 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithRemoteSelector) { 471 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithRemoteSelector) {
472 scoped_refptr<webrtc::MediaStreamInterface> stream( 472 scoped_refptr<webrtc::MediaStreamInterface> stream(
473 AddRemoteMockMediaStream("remote_stream", "video", "audio")); 473 AddRemoteMockMediaStream("remote_stream", "video", "audio"));
474 pc_handler_->OnAddStream(stream.get()); 474 pc_handler_->OnAddStream(stream.get());
475 const WebKit::WebMediaStream& remote_stream = mock_client_->remote_stream(); 475 const blink::WebMediaStream& remote_stream = mock_client_->remote_stream();
476 476
477 WebKit::WebVector<WebKit::WebMediaStreamTrack> tracks; 477 blink::WebVector<blink::WebMediaStreamTrack> tracks;
478 remote_stream.audioTracks(tracks); 478 remote_stream.audioTracks(tracks);
479 ASSERT_LE(1ul, tracks.size()); 479 ASSERT_LE(1ul, tracks.size());
480 480
481 scoped_refptr<MockRTCStatsRequest> request( 481 scoped_refptr<MockRTCStatsRequest> request(
482 new talk_base::RefCountedObject<MockRTCStatsRequest>()); 482 new talk_base::RefCountedObject<MockRTCStatsRequest>());
483 request->setSelector(tracks[0]); 483 request->setSelector(tracks[0]);
484 pc_handler_->getStats(request.get()); 484 pc_handler_->getStats(request.get());
485 EXPECT_EQ(1, request->result()->report_count()); 485 EXPECT_EQ(1, request->result()->report_count());
486 } 486 }
487 487
488 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithBadSelector) { 488 TEST_F(RTCPeerConnectionHandlerTest, GetStatsWithBadSelector) {
489 // The setup is the same as GetStatsWithLocalSelector, but the stream is not 489 // The setup is the same as GetStatsWithLocalSelector, but the stream is not
490 // added to the PeerConnection. 490 // added to the PeerConnection.
491 WebKit::WebMediaStream local_stream( 491 blink::WebMediaStream local_stream(
492 CreateLocalMediaStream("local_stream_2")); 492 CreateLocalMediaStream("local_stream_2"));
493 WebKit::WebMediaConstraints constraints; 493 blink::WebMediaConstraints constraints;
494 WebKit::WebVector<WebKit::WebMediaStreamTrack> tracks; 494 blink::WebVector<blink::WebMediaStreamTrack> tracks;
495 495
496 local_stream.audioTracks(tracks); 496 local_stream.audioTracks(tracks);
497 WebKit::WebMediaStreamTrack component = tracks[0]; 497 blink::WebMediaStreamTrack component = tracks[0];
498 mock_peer_connection_->SetGetStatsResult(false); 498 mock_peer_connection_->SetGetStatsResult(false);
499 499
500 scoped_refptr<MockRTCStatsRequest> request( 500 scoped_refptr<MockRTCStatsRequest> request(
501 new talk_base::RefCountedObject<MockRTCStatsRequest>()); 501 new talk_base::RefCountedObject<MockRTCStatsRequest>());
502 request->setSelector(component); 502 request->setSelector(component);
503 pc_handler_->getStats(request.get()); 503 pc_handler_->getStats(request.get());
504 EXPECT_EQ(0, request->result()->report_count()); 504 EXPECT_EQ(0, request->result()->report_count());
505 } 505 }
506 506
507 TEST_F(RTCPeerConnectionHandlerTest, OnSignalingChange) { 507 TEST_F(RTCPeerConnectionHandlerTest, OnSignalingChange) {
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after
645 } 645 }
646 646
647 TEST_F(RTCPeerConnectionHandlerTest, OnAddAndOnRemoveStream) { 647 TEST_F(RTCPeerConnectionHandlerTest, OnAddAndOnRemoveStream) {
648 std::string remote_stream_label("remote_stream"); 648 std::string remote_stream_label("remote_stream");
649 scoped_refptr<webrtc::MediaStreamInterface> remote_stream( 649 scoped_refptr<webrtc::MediaStreamInterface> remote_stream(
650 AddRemoteMockMediaStream(remote_stream_label, "video", "audio")); 650 AddRemoteMockMediaStream(remote_stream_label, "video", "audio"));
651 651
652 testing::InSequence sequence; 652 testing::InSequence sequence;
653 EXPECT_CALL(*mock_tracker_.get(), TrackAddStream( 653 EXPECT_CALL(*mock_tracker_.get(), TrackAddStream(
654 pc_handler_.get(), 654 pc_handler_.get(),
655 testing::Property(&WebKit::WebMediaStream::id, 655 testing::Property(&blink::WebMediaStream::id,
656 UTF8ToUTF16(remote_stream_label)), 656 UTF8ToUTF16(remote_stream_label)),
657 PeerConnectionTracker::SOURCE_REMOTE)); 657 PeerConnectionTracker::SOURCE_REMOTE));
658 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream( 658 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream(
659 testing::Property(&WebKit::WebMediaStream::id, 659 testing::Property(&blink::WebMediaStream::id,
660 UTF8ToUTF16(remote_stream_label)))); 660 UTF8ToUTF16(remote_stream_label))));
661 661
662 EXPECT_CALL(*mock_tracker_.get(), TrackRemoveStream( 662 EXPECT_CALL(*mock_tracker_.get(), TrackRemoveStream(
663 pc_handler_.get(), 663 pc_handler_.get(),
664 testing::Property(&WebKit::WebMediaStream::id, 664 testing::Property(&blink::WebMediaStream::id,
665 UTF8ToUTF16(remote_stream_label)), 665 UTF8ToUTF16(remote_stream_label)),
666 PeerConnectionTracker::SOURCE_REMOTE)); 666 PeerConnectionTracker::SOURCE_REMOTE));
667 EXPECT_CALL(*mock_client_.get(), didRemoveRemoteStream( 667 EXPECT_CALL(*mock_client_.get(), didRemoveRemoteStream(
668 testing::Property(&WebKit::WebMediaStream::id, 668 testing::Property(&blink::WebMediaStream::id,
669 UTF8ToUTF16(remote_stream_label)))); 669 UTF8ToUTF16(remote_stream_label))));
670 670
671 pc_handler_->OnAddStream(remote_stream.get()); 671 pc_handler_->OnAddStream(remote_stream.get());
672 pc_handler_->OnRemoveStream(remote_stream.get()); 672 pc_handler_->OnRemoveStream(remote_stream.get());
673 } 673 }
674 674
675 // This test that WebKit is notified about remote track state changes. 675 // This test that WebKit is notified about remote track state changes.
676 TEST_F(RTCPeerConnectionHandlerTest, RemoteTrackState) { 676 TEST_F(RTCPeerConnectionHandlerTest, RemoteTrackState) {
677 std::string remote_stream_label("remote_stream"); 677 std::string remote_stream_label("remote_stream");
678 scoped_refptr<webrtc::MediaStreamInterface> remote_stream( 678 scoped_refptr<webrtc::MediaStreamInterface> remote_stream(
679 AddRemoteMockMediaStream(remote_stream_label, "video", "audio")); 679 AddRemoteMockMediaStream(remote_stream_label, "video", "audio"));
680 680
681 testing::InSequence sequence; 681 testing::InSequence sequence;
682 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream( 682 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream(
683 testing::Property(&WebKit::WebMediaStream::id, 683 testing::Property(&blink::WebMediaStream::id,
684 UTF8ToUTF16(remote_stream_label)))); 684 UTF8ToUTF16(remote_stream_label))));
685 pc_handler_->OnAddStream(remote_stream.get()); 685 pc_handler_->OnAddStream(remote_stream.get());
686 const WebKit::WebMediaStream& webkit_stream = mock_client_->remote_stream(); 686 const blink::WebMediaStream& webkit_stream = mock_client_->remote_stream();
687 687
688 WebKit::WebVector<WebKit::WebMediaStreamTrack> audio_tracks; 688 blink::WebVector<blink::WebMediaStreamTrack> audio_tracks;
689 webkit_stream.audioTracks(audio_tracks); 689 webkit_stream.audioTracks(audio_tracks);
690 EXPECT_EQ(WebKit::WebMediaStreamSource::ReadyStateLive, 690 EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateLive,
691 audio_tracks[0].source().readyState()); 691 audio_tracks[0].source().readyState());
692 692
693 WebKit::WebVector<WebKit::WebMediaStreamTrack> video_tracks; 693 blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
694 webkit_stream.videoTracks(video_tracks); 694 webkit_stream.videoTracks(video_tracks);
695 EXPECT_EQ(WebKit::WebMediaStreamSource::ReadyStateLive, 695 EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateLive,
696 video_tracks[0].source().readyState()); 696 video_tracks[0].source().readyState());
697 697
698 remote_stream->GetAudioTracks()[0]->set_state( 698 remote_stream->GetAudioTracks()[0]->set_state(
699 webrtc::MediaStreamTrackInterface::kEnded); 699 webrtc::MediaStreamTrackInterface::kEnded);
700 EXPECT_EQ(WebKit::WebMediaStreamSource::ReadyStateEnded, 700 EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded,
701 audio_tracks[0].source().readyState()); 701 audio_tracks[0].source().readyState());
702 702
703 remote_stream->GetVideoTracks()[0]->set_state( 703 remote_stream->GetVideoTracks()[0]->set_state(
704 webrtc::MediaStreamTrackInterface::kEnded); 704 webrtc::MediaStreamTrackInterface::kEnded);
705 EXPECT_EQ(WebKit::WebMediaStreamSource::ReadyStateEnded, 705 EXPECT_EQ(blink::WebMediaStreamSource::ReadyStateEnded,
706 video_tracks[0].source().readyState()); 706 video_tracks[0].source().readyState());
707 } 707 }
708 708
709 TEST_F(RTCPeerConnectionHandlerTest, RemoveAndAddAudioTrackFromRemoteStream) { 709 TEST_F(RTCPeerConnectionHandlerTest, RemoveAndAddAudioTrackFromRemoteStream) {
710 std::string remote_stream_label("remote_stream"); 710 std::string remote_stream_label("remote_stream");
711 scoped_refptr<webrtc::MediaStreamInterface> remote_stream( 711 scoped_refptr<webrtc::MediaStreamInterface> remote_stream(
712 AddRemoteMockMediaStream(remote_stream_label, "video", "audio")); 712 AddRemoteMockMediaStream(remote_stream_label, "video", "audio"));
713 713
714 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream( 714 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream(
715 testing::Property(&WebKit::WebMediaStream::id, 715 testing::Property(&blink::WebMediaStream::id,
716 UTF8ToUTF16(remote_stream_label)))); 716 UTF8ToUTF16(remote_stream_label))));
717 pc_handler_->OnAddStream(remote_stream.get()); 717 pc_handler_->OnAddStream(remote_stream.get());
718 const WebKit::WebMediaStream& webkit_stream = mock_client_->remote_stream(); 718 const blink::WebMediaStream& webkit_stream = mock_client_->remote_stream();
719 719
720 WebKit::WebVector<WebKit::WebMediaStreamTrack> audio_tracks; 720 blink::WebVector<blink::WebMediaStreamTrack> audio_tracks;
721 webkit_stream.audioTracks(audio_tracks); 721 webkit_stream.audioTracks(audio_tracks);
722 EXPECT_EQ(1u, audio_tracks.size()); 722 EXPECT_EQ(1u, audio_tracks.size());
723 723
724 // Remove the Webrtc audio track from the Webrtc MediaStream. 724 // Remove the Webrtc audio track from the Webrtc MediaStream.
725 scoped_refptr<webrtc::AudioTrackInterface> webrtc_track = 725 scoped_refptr<webrtc::AudioTrackInterface> webrtc_track =
726 remote_stream->GetAudioTracks()[0].get(); 726 remote_stream->GetAudioTracks()[0].get();
727 remote_stream->RemoveTrack(webrtc_track.get()); 727 remote_stream->RemoveTrack(webrtc_track.get());
728 WebKit::WebVector<WebKit::WebMediaStreamTrack> modified_audio_tracks1; 728 blink::WebVector<blink::WebMediaStreamTrack> modified_audio_tracks1;
729 webkit_stream.audioTracks(modified_audio_tracks1); 729 webkit_stream.audioTracks(modified_audio_tracks1);
730 EXPECT_EQ(0u, modified_audio_tracks1.size()); 730 EXPECT_EQ(0u, modified_audio_tracks1.size());
731 731
732 // Add the WebRtc audio track again. 732 // Add the WebRtc audio track again.
733 remote_stream->AddTrack(webrtc_track.get()); 733 remote_stream->AddTrack(webrtc_track.get());
734 WebKit::WebVector<WebKit::WebMediaStreamTrack> modified_audio_tracks2; 734 blink::WebVector<blink::WebMediaStreamTrack> modified_audio_tracks2;
735 webkit_stream.audioTracks(modified_audio_tracks2); 735 webkit_stream.audioTracks(modified_audio_tracks2);
736 EXPECT_EQ(1u, modified_audio_tracks2.size()); 736 EXPECT_EQ(1u, modified_audio_tracks2.size());
737 } 737 }
738 738
739 TEST_F(RTCPeerConnectionHandlerTest, RemoveAndAddVideoTrackFromRemoteStream) { 739 TEST_F(RTCPeerConnectionHandlerTest, RemoveAndAddVideoTrackFromRemoteStream) {
740 std::string remote_stream_label("remote_stream"); 740 std::string remote_stream_label("remote_stream");
741 scoped_refptr<webrtc::MediaStreamInterface> remote_stream( 741 scoped_refptr<webrtc::MediaStreamInterface> remote_stream(
742 AddRemoteMockMediaStream(remote_stream_label, "video", "video")); 742 AddRemoteMockMediaStream(remote_stream_label, "video", "video"));
743 743
744 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream( 744 EXPECT_CALL(*mock_client_.get(), didAddRemoteStream(
745 testing::Property(&WebKit::WebMediaStream::id, 745 testing::Property(&blink::WebMediaStream::id,
746 UTF8ToUTF16(remote_stream_label)))); 746 UTF8ToUTF16(remote_stream_label))));
747 pc_handler_->OnAddStream(remote_stream.get()); 747 pc_handler_->OnAddStream(remote_stream.get());
748 const WebKit::WebMediaStream& webkit_stream = mock_client_->remote_stream(); 748 const blink::WebMediaStream& webkit_stream = mock_client_->remote_stream();
749 749
750 WebKit::WebVector<WebKit::WebMediaStreamTrack> video_tracks; 750 blink::WebVector<blink::WebMediaStreamTrack> video_tracks;
751 webkit_stream.videoTracks(video_tracks); 751 webkit_stream.videoTracks(video_tracks);
752 EXPECT_EQ(1u, video_tracks.size()); 752 EXPECT_EQ(1u, video_tracks.size());
753 753
754 // Remove the Webrtc video track from the Webrtc MediaStream. 754 // Remove the Webrtc video track from the Webrtc MediaStream.
755 scoped_refptr<webrtc::VideoTrackInterface> webrtc_track = 755 scoped_refptr<webrtc::VideoTrackInterface> webrtc_track =
756 remote_stream->GetVideoTracks()[0].get(); 756 remote_stream->GetVideoTracks()[0].get();
757 remote_stream->RemoveTrack(webrtc_track.get()); 757 remote_stream->RemoveTrack(webrtc_track.get());
758 WebKit::WebVector<WebKit::WebMediaStreamTrack> modified_video_tracks1; 758 blink::WebVector<blink::WebMediaStreamTrack> modified_video_tracks1;
759 webkit_stream.videoTracks(modified_video_tracks1); 759 webkit_stream.videoTracks(modified_video_tracks1);
760 EXPECT_EQ(0u, modified_video_tracks1.size()); 760 EXPECT_EQ(0u, modified_video_tracks1.size());
761 761
762 // Add the WebRtc video track again. 762 // Add the WebRtc video track again.
763 remote_stream->AddTrack(webrtc_track.get()); 763 remote_stream->AddTrack(webrtc_track.get());
764 WebKit::WebVector<WebKit::WebMediaStreamTrack> modified_video_tracks2; 764 blink::WebVector<blink::WebMediaStreamTrack> modified_video_tracks2;
765 webkit_stream.videoTracks(modified_video_tracks2); 765 webkit_stream.videoTracks(modified_video_tracks2);
766 EXPECT_EQ(1u, modified_video_tracks2.size()); 766 EXPECT_EQ(1u, modified_video_tracks2.size());
767 } 767 }
768 768
769 TEST_F(RTCPeerConnectionHandlerTest, OnIceCandidate) { 769 TEST_F(RTCPeerConnectionHandlerTest, OnIceCandidate) {
770 testing::InSequence sequence; 770 testing::InSequence sequence;
771 EXPECT_CALL(*mock_tracker_.get(), 771 EXPECT_CALL(*mock_tracker_.get(),
772 TrackAddIceCandidate(pc_handler_.get(), _, 772 TrackAddIceCandidate(pc_handler_.get(), _,
773 PeerConnectionTracker::SOURCE_LOCAL)); 773 PeerConnectionTracker::SOURCE_LOCAL));
774 EXPECT_CALL(*mock_client_.get(), didGenerateICECandidate(_)); 774 EXPECT_CALL(*mock_client_.get(), didGenerateICECandidate(_));
775 775
776 scoped_ptr<webrtc::IceCandidateInterface> native_candidate( 776 scoped_ptr<webrtc::IceCandidateInterface> native_candidate(
777 mock_dependency_factory_->CreateIceCandidate("mid", 1, kDummySdp)); 777 mock_dependency_factory_->CreateIceCandidate("mid", 1, kDummySdp));
778 pc_handler_->OnIceCandidate(native_candidate.get()); 778 pc_handler_->OnIceCandidate(native_candidate.get());
779 EXPECT_EQ("mid", mock_client_->candidate_mid()); 779 EXPECT_EQ("mid", mock_client_->candidate_mid());
780 EXPECT_EQ(1, mock_client_->candidate_mlineindex()); 780 EXPECT_EQ(1, mock_client_->candidate_mlineindex());
781 EXPECT_EQ(kDummySdp, mock_client_->candidate_sdp()); 781 EXPECT_EQ(kDummySdp, mock_client_->candidate_sdp());
782 } 782 }
783 783
784 TEST_F(RTCPeerConnectionHandlerTest, OnRenegotiationNeeded) { 784 TEST_F(RTCPeerConnectionHandlerTest, OnRenegotiationNeeded) {
785 testing::InSequence sequence; 785 testing::InSequence sequence;
786 EXPECT_CALL(*mock_tracker_.get(), 786 EXPECT_CALL(*mock_tracker_.get(),
787 TrackOnRenegotiationNeeded(pc_handler_.get())); 787 TrackOnRenegotiationNeeded(pc_handler_.get()));
788 EXPECT_CALL(*mock_client_.get(), negotiationNeeded()); 788 EXPECT_CALL(*mock_client_.get(), negotiationNeeded());
789 pc_handler_->OnRenegotiationNeeded(); 789 pc_handler_->OnRenegotiationNeeded();
790 } 790 }
791 791
792 TEST_F(RTCPeerConnectionHandlerTest, CreateDataChannel) { 792 TEST_F(RTCPeerConnectionHandlerTest, CreateDataChannel) {
793 WebKit::WebString label = "d1"; 793 blink::WebString label = "d1";
794 EXPECT_CALL(*mock_tracker_.get(), 794 EXPECT_CALL(*mock_tracker_.get(),
795 TrackCreateDataChannel(pc_handler_.get(), 795 TrackCreateDataChannel(pc_handler_.get(),
796 testing::NotNull(), 796 testing::NotNull(),
797 PeerConnectionTracker::SOURCE_LOCAL)); 797 PeerConnectionTracker::SOURCE_LOCAL));
798 scoped_ptr<WebKit::WebRTCDataChannelHandler> channel( 798 scoped_ptr<blink::WebRTCDataChannelHandler> channel(
799 pc_handler_->createDataChannel("d1", WebKit::WebRTCDataChannelInit())); 799 pc_handler_->createDataChannel("d1", blink::WebRTCDataChannelInit()));
800 EXPECT_TRUE(channel.get() != NULL); 800 EXPECT_TRUE(channel.get() != NULL);
801 EXPECT_EQ(label, channel->label()); 801 EXPECT_EQ(label, channel->label());
802 } 802 }
803 803
804 TEST_F(RTCPeerConnectionHandlerTest, CreateDtmfSender) { 804 TEST_F(RTCPeerConnectionHandlerTest, CreateDtmfSender) {
805 std::string stream_label = "local_stream"; 805 std::string stream_label = "local_stream";
806 WebKit::WebMediaStream local_stream(CreateLocalMediaStream(stream_label)); 806 blink::WebMediaStream local_stream(CreateLocalMediaStream(stream_label));
807 WebKit::WebMediaConstraints constraints; 807 blink::WebMediaConstraints constraints;
808 pc_handler_->addStream(local_stream, constraints); 808 pc_handler_->addStream(local_stream, constraints);
809 809
810 WebKit::WebVector<WebKit::WebMediaStreamTrack> tracks; 810 blink::WebVector<blink::WebMediaStreamTrack> tracks;
811 local_stream.videoTracks(tracks); 811 local_stream.videoTracks(tracks);
812 812
813 ASSERT_LE(1ul, tracks.size()); 813 ASSERT_LE(1ul, tracks.size());
814 EXPECT_FALSE(pc_handler_->createDTMFSender(tracks[0])); 814 EXPECT_FALSE(pc_handler_->createDTMFSender(tracks[0]));
815 815
816 local_stream.audioTracks(tracks); 816 local_stream.audioTracks(tracks);
817 ASSERT_LE(1ul, tracks.size()); 817 ASSERT_LE(1ul, tracks.size());
818 818
819 EXPECT_CALL(*mock_tracker_.get(), 819 EXPECT_CALL(*mock_tracker_.get(),
820 TrackCreateDTMFSender(pc_handler_.get(), 820 TrackCreateDTMFSender(pc_handler_.get(),
821 testing::Ref(tracks[0]))); 821 testing::Ref(tracks[0])));
822 822
823 scoped_ptr<WebKit::WebRTCDTMFSenderHandler> sender( 823 scoped_ptr<blink::WebRTCDTMFSenderHandler> sender(
824 pc_handler_->createDTMFSender(tracks[0])); 824 pc_handler_->createDTMFSender(tracks[0]));
825 EXPECT_TRUE(sender.get()); 825 EXPECT_TRUE(sender.get());
826 } 826 }
827 827
828 } // namespace content 828 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/media/rtc_peer_connection_handler.cc ('k') | content/renderer/media/test_response_generator.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698