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

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

Issue 550383002: Cleanup ChannelFactory interface (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 3 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/jingle_session.cc ('k') | remoting/protocol/protobuf_video_reader.cc » ('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 (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 "remoting/protocol/jingle_session.h" 5 #include "remoting/protocol/jingle_session.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop/message_loop.h" 8 #include "base/message_loop/message_loop.h"
9 #include "base/run_loop.h" 9 #include "base/run_loop.h"
10 #include "base/test/test_timeouts.h" 10 #include "base/test/test_timeouts.h"
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 SessionManager::IncomingSessionResponse*)); 77 SessionManager::IncomingSessionResponse*));
78 }; 78 };
79 79
80 class MockSessionEventHandler : public Session::EventHandler { 80 class MockSessionEventHandler : public Session::EventHandler {
81 public: 81 public:
82 MOCK_METHOD1(OnSessionStateChange, void(Session::State)); 82 MOCK_METHOD1(OnSessionStateChange, void(Session::State));
83 MOCK_METHOD2(OnSessionRouteChange, void(const std::string& channel_name, 83 MOCK_METHOD2(OnSessionRouteChange, void(const std::string& channel_name,
84 const TransportRoute& route)); 84 const TransportRoute& route));
85 }; 85 };
86 86
87 class MockStreamChannelCallback { 87 class MockChannelCreatedCallback {
88 public: 88 public:
89 MOCK_METHOD1(OnDone, void(net::StreamSocket* socket)); 89 MOCK_METHOD1(OnDone, void(net::StreamSocket* socket));
90 }; 90 };
91 91
92 } // namespace 92 } // namespace
93 93
94 class JingleSessionTest : public testing::Test { 94 class JingleSessionTest : public testing::Test {
95 public: 95 public:
96 JingleSessionTest() { 96 JingleSessionTest() {
97 message_loop_.reset(new base::MessageLoopForIO()); 97 message_loop_.reset(new base::MessageLoopForIO());
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 255
256 client_session_ = client_server_->Connect( 256 client_session_ = client_server_->Connect(
257 kHostJid, authenticator.Pass(), 257 kHostJid, authenticator.Pass(),
258 CandidateSessionConfig::CreateDefault()); 258 CandidateSessionConfig::CreateDefault());
259 client_session_->SetEventHandler(&client_session_event_handler_); 259 client_session_->SetEventHandler(&client_session_event_handler_);
260 260
261 base::RunLoop().RunUntilIdle(); 261 base::RunLoop().RunUntilIdle();
262 } 262 }
263 263
264 void CreateChannel() { 264 void CreateChannel() {
265 client_session_->GetTransportChannelFactory()->CreateStreamChannel( 265 client_session_->GetTransportChannelFactory()->CreateChannel(
266 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated, 266 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated,
267 base::Unretained(this))); 267 base::Unretained(this)));
268 host_session_->GetTransportChannelFactory()->CreateStreamChannel( 268 host_session_->GetTransportChannelFactory()->CreateChannel(
269 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated, 269 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated,
270 base::Unretained(this))); 270 base::Unretained(this)));
271 271
272 int counter = 2; 272 int counter = 2;
273 ExpectRouteChange(kChannelName); 273 ExpectRouteChange(kChannelName);
274 EXPECT_CALL(client_channel_callback_, OnDone(_)) 274 EXPECT_CALL(client_channel_callback_, OnDone(_))
275 .WillOnce(QuitThreadOnCounter(&counter)); 275 .WillOnce(QuitThreadOnCounter(&counter));
276 EXPECT_CALL(host_channel_callback_, OnDone(_)) 276 EXPECT_CALL(host_channel_callback_, OnDone(_))
277 .WillOnce(QuitThreadOnCounter(&counter)); 277 .WillOnce(QuitThreadOnCounter(&counter));
278 message_loop_->Run(); 278 message_loop_->Run();
(...skipping 19 matching lines...) Expand all
298 scoped_ptr<JingleSessionManager> host_server_; 298 scoped_ptr<JingleSessionManager> host_server_;
299 MockSessionManagerListener host_server_listener_; 299 MockSessionManagerListener host_server_listener_;
300 scoped_ptr<JingleSessionManager> client_server_; 300 scoped_ptr<JingleSessionManager> client_server_;
301 MockSessionManagerListener client_server_listener_; 301 MockSessionManagerListener client_server_listener_;
302 302
303 scoped_ptr<Session> host_session_; 303 scoped_ptr<Session> host_session_;
304 MockSessionEventHandler host_session_event_handler_; 304 MockSessionEventHandler host_session_event_handler_;
305 scoped_ptr<Session> client_session_; 305 scoped_ptr<Session> client_session_;
306 MockSessionEventHandler client_session_event_handler_; 306 MockSessionEventHandler client_session_event_handler_;
307 307
308 MockStreamChannelCallback client_channel_callback_; 308 MockChannelCreatedCallback client_channel_callback_;
309 MockStreamChannelCallback host_channel_callback_; 309 MockChannelCreatedCallback host_channel_callback_;
310 310
311 scoped_ptr<net::StreamSocket> client_socket_; 311 scoped_ptr<net::StreamSocket> client_socket_;
312 scoped_ptr<net::StreamSocket> host_socket_; 312 scoped_ptr<net::StreamSocket> host_socket_;
313 }; 313 };
314 314
315 315
316 // Verify that we can create and destroy session managers without a 316 // Verify that we can create and destroy session managers without a
317 // connection. 317 // connection.
318 TEST_F(JingleSessionTest, CreateAndDestoy) { 318 TEST_F(JingleSessionTest, CreateAndDestoy) {
319 CreateSessionManagers(1, FakeAuthenticator::ACCEPT); 319 CreateSessionManagers(1, FakeAuthenticator::ACCEPT);
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after
446 CandidateSessionConfig::CreateDefault()); 446 CandidateSessionConfig::CreateDefault());
447 base::RunLoop().RunUntilIdle(); 447 base::RunLoop().RunUntilIdle();
448 } 448 }
449 449
450 // Verify that data can be sent over a multiplexed channel. 450 // Verify that data can be sent over a multiplexed channel.
451 TEST_F(JingleSessionTest, TestMuxStreamChannel) { 451 TEST_F(JingleSessionTest, TestMuxStreamChannel) {
452 CreateSessionManagers(1, FakeAuthenticator::ACCEPT); 452 CreateSessionManagers(1, FakeAuthenticator::ACCEPT);
453 ASSERT_NO_FATAL_FAILURE( 453 ASSERT_NO_FATAL_FAILURE(
454 InitiateConnection(1, FakeAuthenticator::ACCEPT, false)); 454 InitiateConnection(1, FakeAuthenticator::ACCEPT, false));
455 455
456 client_session_->GetMultiplexedChannelFactory()->CreateStreamChannel( 456 client_session_->GetMultiplexedChannelFactory()->CreateChannel(
457 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated, 457 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated,
458 base::Unretained(this))); 458 base::Unretained(this)));
459 host_session_->GetMultiplexedChannelFactory()->CreateStreamChannel( 459 host_session_->GetMultiplexedChannelFactory()->CreateChannel(
460 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated, 460 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated,
461 base::Unretained(this))); 461 base::Unretained(this)));
462 462
463 int counter = 2; 463 int counter = 2;
464 ExpectRouteChange("mux"); 464 ExpectRouteChange("mux");
465 EXPECT_CALL(client_channel_callback_, OnDone(_)) 465 EXPECT_CALL(client_channel_callback_, OnDone(_))
466 .WillOnce(QuitThreadOnCounter(&counter)); 466 .WillOnce(QuitThreadOnCounter(&counter));
467 EXPECT_CALL(host_channel_callback_, OnDone(_)) 467 EXPECT_CALL(host_channel_callback_, OnDone(_))
468 .WillOnce(QuitThreadOnCounter(&counter)); 468 .WillOnce(QuitThreadOnCounter(&counter));
469 message_loop_->Run(); 469 message_loop_->Run();
(...skipping 22 matching lines...) Expand all
492 message_loop_->Run(); 492 message_loop_->Run();
493 tester.CheckResults(); 493 tester.CheckResults();
494 } 494 }
495 495
496 // Verify that we shutdown properly when channel authentication fails. 496 // Verify that we shutdown properly when channel authentication fails.
497 TEST_F(JingleSessionTest, TestFailedChannelAuth) { 497 TEST_F(JingleSessionTest, TestFailedChannelAuth) {
498 CreateSessionManagers(1, FakeAuthenticator::REJECT_CHANNEL); 498 CreateSessionManagers(1, FakeAuthenticator::REJECT_CHANNEL);
499 ASSERT_NO_FATAL_FAILURE( 499 ASSERT_NO_FATAL_FAILURE(
500 InitiateConnection(1, FakeAuthenticator::ACCEPT, false)); 500 InitiateConnection(1, FakeAuthenticator::ACCEPT, false));
501 501
502 client_session_->GetTransportChannelFactory()->CreateStreamChannel( 502 client_session_->GetTransportChannelFactory()->CreateChannel(
503 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated, 503 kChannelName, base::Bind(&JingleSessionTest::OnClientChannelCreated,
504 base::Unretained(this))); 504 base::Unretained(this)));
505 host_session_->GetTransportChannelFactory()->CreateStreamChannel( 505 host_session_->GetTransportChannelFactory()->CreateChannel(
506 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated, 506 kChannelName, base::Bind(&JingleSessionTest::OnHostChannelCreated,
507 base::Unretained(this))); 507 base::Unretained(this)));
508 508
509 // Terminate the message loop when we get rejection notification 509 // Terminate the message loop when we get rejection notification
510 // from the host. 510 // from the host.
511 EXPECT_CALL(host_channel_callback_, OnDone(NULL)) 511 EXPECT_CALL(host_channel_callback_, OnDone(NULL))
512 .WillOnce(QuitThread()); 512 .WillOnce(QuitThread());
513 EXPECT_CALL(client_channel_callback_, OnDone(_)) 513 EXPECT_CALL(client_channel_callback_, OnDone(_))
514 .Times(AtMost(1)); 514 .Times(AtMost(1));
515 ExpectRouteChange(kChannelName); 515 ExpectRouteChange(kChannelName);
516 516
517 message_loop_->Run(); 517 message_loop_->Run();
518 518
519 EXPECT_TRUE(!host_socket_.get()); 519 EXPECT_TRUE(!host_socket_.get());
520 } 520 }
521 521
522 } // namespace protocol 522 } // namespace protocol
523 } // namespace remoting 523 } // namespace remoting
OLDNEW
« no previous file with comments | « remoting/protocol/jingle_session.cc ('k') | remoting/protocol/protobuf_video_reader.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698