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

Side by Side Diff: remoting/protocol/connection_unittest.cc

Issue 1864213002: Convert //remoting to use std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Mac IWYU Created 4 years, 8 months 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
« no previous file with comments | « remoting/protocol/connection_to_host.h ('k') | remoting/protocol/content_description.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 <utility> 5 #include <utility>
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/macros.h" 8 #include "base/macros.h"
9 #include "base/memory/ptr_util.h"
9 #include "base/message_loop/message_loop.h" 10 #include "base/message_loop/message_loop.h"
10 #include "base/run_loop.h" 11 #include "base/run_loop.h"
11 #include "remoting/base/constants.h" 12 #include "remoting/base/constants.h"
12 #include "remoting/protocol/fake_session.h" 13 #include "remoting/protocol/fake_session.h"
13 #include "remoting/protocol/fake_video_renderer.h" 14 #include "remoting/protocol/fake_video_renderer.h"
14 #include "remoting/protocol/ice_connection_to_client.h" 15 #include "remoting/protocol/ice_connection_to_client.h"
15 #include "remoting/protocol/ice_connection_to_host.h" 16 #include "remoting/protocol/ice_connection_to_host.h"
16 #include "remoting/protocol/protocol_mock_objects.h" 17 #include "remoting/protocol/protocol_mock_objects.h"
17 #include "remoting/protocol/transport_context.h" 18 #include "remoting/protocol/transport_context.h"
18 #include "remoting/protocol/video_stream.h" 19 #include "remoting/protocol/video_stream.h"
(...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 public: 65 public:
65 TestScreenCapturer() {} 66 TestScreenCapturer() {}
66 ~TestScreenCapturer() override {} 67 ~TestScreenCapturer() override {}
67 68
68 // webrtc::DesktopCapturer interface. 69 // webrtc::DesktopCapturer interface.
69 void Start(Callback* callback) override { 70 void Start(Callback* callback) override {
70 callback_ = callback; 71 callback_ = callback;
71 } 72 }
72 void Capture(const webrtc::DesktopRegion& region) override { 73 void Capture(const webrtc::DesktopRegion& region) override {
73 // Return black 10x10 frame. 74 // Return black 10x10 frame.
74 scoped_ptr<webrtc::DesktopFrame> frame( 75 std::unique_ptr<webrtc::DesktopFrame> frame(
75 new webrtc::BasicDesktopFrame(webrtc::DesktopSize(100, 100))); 76 new webrtc::BasicDesktopFrame(webrtc::DesktopSize(100, 100)));
76 memset(frame->data(), 0, frame->stride() * frame->size().height()); 77 memset(frame->data(), 0, frame->stride() * frame->size().height());
77 frame->mutable_updated_region()->SetRect( 78 frame->mutable_updated_region()->SetRect(
78 webrtc::DesktopRect::MakeSize(frame->size())); 79 webrtc::DesktopRect::MakeSize(frame->size()));
79 callback_->OnCaptureCompleted(frame.release()); 80 callback_->OnCaptureCompleted(frame.release());
80 } 81 }
81 82
82 private: 83 private:
83 Callback* callback_ = nullptr; 84 Callback* callback_ = nullptr;
84 }; 85 };
(...skipping 10 matching lines...) Expand all
95 96
96 void SetUp() override { 97 void SetUp() override {
97 // Create fake sessions. 98 // Create fake sessions.
98 host_session_ = new FakeSession(); 99 host_session_ = new FakeSession();
99 owned_client_session_.reset(new FakeSession()); 100 owned_client_session_.reset(new FakeSession());
100 client_session_ = owned_client_session_.get(); 101 client_session_ = owned_client_session_.get();
101 102
102 // Create Connection objects. 103 // Create Connection objects.
103 if (is_using_webrtc()) { 104 if (is_using_webrtc()) {
104 host_connection_.reset(new WebrtcConnectionToClient( 105 host_connection_.reset(new WebrtcConnectionToClient(
105 make_scoped_ptr(host_session_), 106 base::WrapUnique(host_session_),
106 TransportContext::ForTests(protocol::TransportRole::SERVER))); 107 TransportContext::ForTests(protocol::TransportRole::SERVER)));
107 client_connection_.reset(new WebrtcConnectionToHost()); 108 client_connection_.reset(new WebrtcConnectionToHost());
108 109
109 } else { 110 } else {
110 host_connection_.reset(new IceConnectionToClient( 111 host_connection_.reset(new IceConnectionToClient(
111 make_scoped_ptr(host_session_), 112 base::WrapUnique(host_session_),
112 TransportContext::ForTests(protocol::TransportRole::SERVER), 113 TransportContext::ForTests(protocol::TransportRole::SERVER),
113 message_loop_.task_runner())); 114 message_loop_.task_runner()));
114 client_connection_.reset(new IceConnectionToHost()); 115 client_connection_.reset(new IceConnectionToHost());
115 } 116 }
116 117
117 // Setup host side. 118 // Setup host side.
118 host_connection_->SetEventHandler(&host_event_handler_); 119 host_connection_->SetEventHandler(&host_event_handler_);
119 host_connection_->set_clipboard_stub(&host_clipboard_stub_); 120 host_connection_->set_clipboard_stub(&host_clipboard_stub_);
120 host_connection_->set_host_stub(&host_stub_); 121 host_connection_->set_host_stub(&host_stub_);
121 host_connection_->set_input_stub(&host_input_stub_); 122 host_connection_->set_input_stub(&host_input_stub_);
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after
180 run_loop_->Quit(); 181 run_loop_->Quit();
181 } 182 }
182 183
183 void OnClientConnected() { 184 void OnClientConnected() {
184 client_connected_ = true; 185 client_connected_ = true;
185 if (host_connected_ && run_loop_) 186 if (host_connected_ && run_loop_)
186 run_loop_->Quit(); 187 run_loop_->Quit();
187 } 188 }
188 189
189 base::MessageLoopForIO message_loop_; 190 base::MessageLoopForIO message_loop_;
190 scoped_ptr<base::RunLoop> run_loop_; 191 std::unique_ptr<base::RunLoop> run_loop_;
191 192
192 MockConnectionToClientEventHandler host_event_handler_; 193 MockConnectionToClientEventHandler host_event_handler_;
193 MockClipboardStub host_clipboard_stub_; 194 MockClipboardStub host_clipboard_stub_;
194 MockHostStub host_stub_; 195 MockHostStub host_stub_;
195 MockInputStub host_input_stub_; 196 MockInputStub host_input_stub_;
196 scoped_ptr<ConnectionToClient> host_connection_; 197 std::unique_ptr<ConnectionToClient> host_connection_;
197 FakeSession* host_session_; // Owned by |host_connection_|. 198 FakeSession* host_session_; // Owned by |host_connection_|.
198 bool host_connected_ = false; 199 bool host_connected_ = false;
199 200
200 MockConnectionToHostEventCallback client_event_handler_; 201 MockConnectionToHostEventCallback client_event_handler_;
201 MockClientStub client_stub_; 202 MockClientStub client_stub_;
202 MockClipboardStub client_clipboard_stub_; 203 MockClipboardStub client_clipboard_stub_;
203 FakeVideoRenderer client_video_renderer_; 204 FakeVideoRenderer client_video_renderer_;
204 scoped_ptr<ConnectionToHost> client_connection_; 205 std::unique_ptr<ConnectionToHost> client_connection_;
205 FakeSession* client_session_; // Owned by |client_connection_|. 206 FakeSession* client_session_; // Owned by |client_connection_|.
206 scoped_ptr<FakeSession> owned_client_session_; 207 std::unique_ptr<FakeSession> owned_client_session_;
207 bool client_connected_ = false; 208 bool client_connected_ = false;
208 209
209 private: 210 private:
210 DISALLOW_COPY_AND_ASSIGN(ConnectionTest); 211 DISALLOW_COPY_AND_ASSIGN(ConnectionTest);
211 }; 212 };
212 213
213 INSTANTIATE_TEST_CASE_P(Ice, ConnectionTest, ::testing::Values(false)); 214 INSTANTIATE_TEST_CASE_P(Ice, ConnectionTest, ::testing::Values(false));
214 INSTANTIATE_TEST_CASE_P(Webrtc, ConnectionTest, ::testing::Values(true)); 215 INSTANTIATE_TEST_CASE_P(Webrtc, ConnectionTest, ::testing::Values(true));
215 216
216 TEST_P(ConnectionTest, RejectConnection) { 217 TEST_P(ConnectionTest, RejectConnection) {
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
272 273
273 // Send capabilities from the client. 274 // Send capabilities from the client.
274 client_connection_->input_stub()->InjectKeyEvent(event); 275 client_connection_->input_stub()->InjectKeyEvent(event);
275 276
276 run_loop.Run(); 277 run_loop.Run();
277 } 278 }
278 279
279 TEST_P(ConnectionTest, Video) { 280 TEST_P(ConnectionTest, Video) {
280 Connect(); 281 Connect();
281 282
282 scoped_ptr<VideoStream> video_stream = host_connection_->StartVideoStream( 283 std::unique_ptr<VideoStream> video_stream =
283 make_scoped_ptr(new TestScreenCapturer())); 284 host_connection_->StartVideoStream(
285 base::WrapUnique(new TestScreenCapturer()));
284 286
285 base::RunLoop run_loop; 287 base::RunLoop run_loop;
286 288
287 // Expect frames to be passed to FrameConsumer when WebRTC is used, or to 289 // Expect frames to be passed to FrameConsumer when WebRTC is used, or to
288 // VideoStub otherwise. 290 // VideoStub otherwise.
289 if (is_using_webrtc()) { 291 if (is_using_webrtc()) {
290 client_video_renderer_.GetFrameConsumer()->set_on_frame_callback( 292 client_video_renderer_.GetFrameConsumer()->set_on_frame_callback(
291 base::Bind(&base::RunLoop::Quit, base::Unretained(&run_loop))); 293 base::Bind(&base::RunLoop::Quit, base::Unretained(&run_loop)));
292 } else { 294 } else {
293 client_video_renderer_.GetVideoStub()->set_on_frame_callback( 295 client_video_renderer_.GetVideoStub()->set_on_frame_callback(
(...skipping 13 matching lines...) Expand all
307 client_video_renderer_.GetFrameConsumer()->received_frames().size(), 309 client_video_renderer_.GetFrameConsumer()->received_frames().size(),
308 0U); 310 0U);
309 EXPECT_EQ(client_video_renderer_.GetVideoStub()->received_packets().size(), 311 EXPECT_EQ(client_video_renderer_.GetVideoStub()->received_packets().size(),
310 1U); 312 1U);
311 } 313 }
312 314
313 } 315 }
314 316
315 } // namespace protocol 317 } // namespace protocol
316 } // namespace remoting 318 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/protocol/connection_to_host.h ('k') | remoting/protocol/content_description.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698