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

Side by Side Diff: remoting/host/chromoting_host_unittest.cc

Issue 11018004: Fix ChromotingHost and DesktopEnvironmentFactory references to TaskRunners. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 8 years, 2 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 | 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 "base/bind.h" 5 #include "base/bind.h"
6 #include "base/memory/scoped_ptr.h" 6 #include "base/memory/scoped_ptr.h"
7 #include "base/message_loop_proxy.h" 7 #include "base/message_loop_proxy.h"
8 #include "remoting/base/auto_thread_task_runner.h" 8 #include "remoting/base/auto_thread_task_runner.h"
9 #include "remoting/jingle_glue/mock_objects.h" 9 #include "remoting/jingle_glue/mock_objects.h"
10 #include "remoting/host/audio_capturer.h" 10 #include "remoting/host/audio_capturer.h"
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 void DoNothing() { 64 void DoNothing() {
65 } 65 }
66 66
67 } // namespace 67 } // namespace
68 68
69 class MockDesktopEnvironmentFactory : public DesktopEnvironmentFactory { 69 class MockDesktopEnvironmentFactory : public DesktopEnvironmentFactory {
70 public: 70 public:
71 MockDesktopEnvironmentFactory(); 71 MockDesktopEnvironmentFactory();
72 virtual ~MockDesktopEnvironmentFactory(); 72 virtual ~MockDesktopEnvironmentFactory();
73 73
74 virtual scoped_ptr<DesktopEnvironment> Create( 74 virtual scoped_ptr<DesktopEnvironment> Create() OVERRIDE;
75 ChromotingHostContext* context) OVERRIDE;
76 75
77 private: 76 private:
78 DISALLOW_COPY_AND_ASSIGN(MockDesktopEnvironmentFactory); 77 DISALLOW_COPY_AND_ASSIGN(MockDesktopEnvironmentFactory);
79 }; 78 };
80 79
81 MockDesktopEnvironmentFactory::MockDesktopEnvironmentFactory() { 80 MockDesktopEnvironmentFactory::MockDesktopEnvironmentFactory()
81 : DesktopEnvironmentFactory(NULL, NULL) {
82 } 82 }
83 83
84 MockDesktopEnvironmentFactory::~MockDesktopEnvironmentFactory() { 84 MockDesktopEnvironmentFactory::~MockDesktopEnvironmentFactory() {
85 } 85 }
86 86
87 scoped_ptr<DesktopEnvironment> MockDesktopEnvironmentFactory::Create( 87 scoped_ptr<DesktopEnvironment> MockDesktopEnvironmentFactory::Create() {
88 ChromotingHostContext* context) {
89 scoped_ptr<EventExecutor> event_executor(new EventExecutorFake()); 88 scoped_ptr<EventExecutor> event_executor(new EventExecutorFake());
90 scoped_ptr<VideoFrameCapturer> video_capturer(new VideoFrameCapturerFake()); 89 scoped_ptr<VideoFrameCapturer> video_capturer(new VideoFrameCapturerFake());
91 return scoped_ptr<DesktopEnvironment>(new DesktopEnvironment( 90 return scoped_ptr<DesktopEnvironment>(new DesktopEnvironment(
92 scoped_ptr<AudioCapturer>(NULL), 91 scoped_ptr<AudioCapturer>(NULL),
93 event_executor.Pass(), 92 event_executor.Pass(),
94 video_capturer.Pass())); 93 video_capturer.Pass()));
95 } 94 }
96 95
97 class ChromotingHostTest : public testing::Test { 96 class ChromotingHostTest : public testing::Test {
98 public: 97 public:
(...skipping 16 matching lines...) Expand all
115 .Times(AnyNumber()) 114 .Times(AnyNumber())
116 .WillRepeatedly(Return(ui_task_runner_.get())); 115 .WillRepeatedly(Return(ui_task_runner_.get()));
117 EXPECT_CALL(context_, network_task_runner()) 116 EXPECT_CALL(context_, network_task_runner())
118 .Times(AnyNumber()) 117 .Times(AnyNumber())
119 .WillRepeatedly(Return(ui_task_runner_.get())); 118 .WillRepeatedly(Return(ui_task_runner_.get()));
120 119
121 desktop_environment_factory_.reset(new MockDesktopEnvironmentFactory()); 120 desktop_environment_factory_.reset(new MockDesktopEnvironmentFactory());
122 session_manager_ = new protocol::MockSessionManager(); 121 session_manager_ = new protocol::MockSessionManager();
123 122
124 host_ = new ChromotingHost( 123 host_ = new ChromotingHost(
125 &context_, &signal_strategy_, desktop_environment_factory_.get(), 124 &signal_strategy_,
126 scoped_ptr<protocol::SessionManager>(session_manager_)); 125 desktop_environment_factory_.get(),
126 scoped_ptr<protocol::SessionManager>(session_manager_),
127 context_.capture_task_runner(),
128 context_.encode_task_runner(),
129 context_.network_task_runner());
127 host_->AddStatusObserver(&host_status_observer_); 130 host_->AddStatusObserver(&host_status_observer_);
128 131
129 disconnect_window_ = new MockDisconnectWindow(); 132 disconnect_window_ = new MockDisconnectWindow();
130 continue_window_ = new MockContinueWindow(); 133 continue_window_ = new MockContinueWindow();
131 local_input_monitor_ = new MockLocalInputMonitor(); 134 local_input_monitor_ = new MockLocalInputMonitor();
132 it2me_host_user_interface_.reset(new It2MeHostUserInterface(&context_)); 135 it2me_host_user_interface_.reset(new It2MeHostUserInterface(&context_));
133 it2me_host_user_interface_->StartForTest( 136 it2me_host_user_interface_->StartForTest(
134 host_, 137 host_,
135 base::Bind(&ChromotingHost::Shutdown, host_, base::Closure()), 138 base::Bind(&ChromotingHost::Shutdown, host_, base::Closure()),
136 scoped_ptr<DisconnectWindow>(disconnect_window_), 139 scoped_ptr<DisconnectWindow>(disconnect_window_),
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
216 } 219 }
217 220
218 // Helper method to pretend a client is connected to ChromotingHost. 221 // Helper method to pretend a client is connected to ChromotingHost.
219 void SimulateClientConnection(int connection_index, bool authenticate, 222 void SimulateClientConnection(int connection_index, bool authenticate,
220 bool reject) { 223 bool reject) {
221 scoped_ptr<protocol::ConnectionToClient> connection = 224 scoped_ptr<protocol::ConnectionToClient> connection =
222 ((connection_index == 0) ? owned_connection1_ : owned_connection2_). 225 ((connection_index == 0) ? owned_connection1_ : owned_connection2_).
223 PassAs<protocol::ConnectionToClient>(); 226 PassAs<protocol::ConnectionToClient>();
224 protocol::ConnectionToClient* connection_ptr = connection.get(); 227 protocol::ConnectionToClient* connection_ptr = connection.get();
225 scoped_ptr<DesktopEnvironment> desktop_environment = 228 scoped_ptr<DesktopEnvironment> desktop_environment =
226 host_->desktop_environment_factory_->Create(&context_); 229 host_->desktop_environment_factory_->Create();
227 connection_ptr->set_input_stub(desktop_environment->event_executor()); 230 connection_ptr->set_input_stub(desktop_environment->event_executor());
228 231
229 scoped_refptr<ClientSession> client = new ClientSession( 232 scoped_refptr<ClientSession> client = new ClientSession(
230 host_.get(), 233 host_.get(),
231 context_.capture_task_runner(), 234 context_.capture_task_runner(),
232 context_.encode_task_runner(), 235 context_.encode_task_runner(),
233 context_.network_task_runner(), 236 context_.network_task_runner(),
234 connection.Pass(), 237 connection.Pass(),
235 host_->desktop_environment_factory_->Create(&context_), 238 desktop_environment.Pass(),
alexeypa (please no reviews) 2012/10/01 18:31:34 nit: I wonder how it worked before?
Wez 2012/10/02 05:19:44 Good question; I think we just don't inject any in
236 base::TimeDelta()); 239 base::TimeDelta());
237 connection_ptr->set_host_stub(client); 240 connection_ptr->set_host_stub(client);
238 241
239 context_.network_task_runner()->PostTask( 242 context_.network_task_runner()->PostTask(
240 FROM_HERE, base::Bind(&ChromotingHostTest::AddClientToHost, 243 FROM_HERE, base::Bind(&ChromotingHostTest::AddClientToHost,
241 host_, client)); 244 host_, client));
242 245
243 if (authenticate) { 246 if (authenticate) {
244 context_.network_task_runner()->PostTask( 247 context_.network_task_runner()->PostTask(
245 FROM_HERE, base::Bind(&ClientSession::OnConnectionAuthenticated, 248 FROM_HERE, base::Bind(&ClientSession::OnConnectionAuthenticated,
(...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after
670 ExpectClientDisconnected(0, true, video_packet_sent, 673 ExpectClientDisconnected(0, true, video_packet_sent,
671 InvokeWithoutArgs(this, &ChromotingHostTest::ShutdownHost)); 674 InvokeWithoutArgs(this, &ChromotingHostTest::ShutdownHost));
672 EXPECT_CALL(host_status_observer_, OnShutdown()); 675 EXPECT_CALL(host_status_observer_, OnShutdown());
673 676
674 host_->Start(xmpp_login_); 677 host_->Start(xmpp_login_);
675 SimulateClientConnection(0, true, false); 678 SimulateClientConnection(0, true, false);
676 message_loop_.Run(); 679 message_loop_.Run();
677 } 680 }
678 681
679 } // namespace remoting 682 } // namespace remoting
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698