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 "remoting/host/desktop_process.h" | 5 #include "remoting/host/desktop_process.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/bind_helpers.h" | 8 #include "base/bind_helpers.h" |
9 #include "base/location.h" | 9 #include "base/location.h" |
10 #include "base/memory/ref_counted.h" | 10 #include "base/memory/ref_counted.h" |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
168 | 168 |
169 void DesktopProcessTest::ConnectNetworkChannel( | 169 void DesktopProcessTest::ConnectNetworkChannel( |
170 IPC::PlatformFileForTransit desktop_process) { | 170 IPC::PlatformFileForTransit desktop_process) { |
171 | 171 |
172 #if defined(OS_POSIX) | 172 #if defined(OS_POSIX) |
173 IPC::ChannelHandle channel_handle(std::string(), desktop_process); | 173 IPC::ChannelHandle channel_handle(std::string(), desktop_process); |
174 #elif defined(OS_WIN) | 174 #elif defined(OS_WIN) |
175 IPC::ChannelHandle channel_handle(desktop_process); | 175 IPC::ChannelHandle channel_handle(desktop_process); |
176 #endif // defined(OS_WIN) | 176 #endif // defined(OS_WIN) |
177 | 177 |
178 network_channel_.reset(new IPC::ChannelProxy(channel_handle, | 178 network_channel_ = IPC::ChannelProxy::CreateClient( |
179 IPC::Channel::MODE_CLIENT, | 179 channel_handle, |
180 &network_listener_, | 180 &network_listener_, |
181 io_task_runner_.get())); | 181 io_task_runner_.get()); |
182 } | 182 } |
183 | 183 |
184 void DesktopProcessTest::OnDesktopAttached( | 184 void DesktopProcessTest::OnDesktopAttached( |
185 IPC::PlatformFileForTransit desktop_process) { | 185 IPC::PlatformFileForTransit desktop_process) { |
186 #if defined(OS_POSIX) | 186 #if defined(OS_POSIX) |
187 DCHECK(desktop_process.auto_close); | 187 DCHECK(desktop_process.auto_close); |
188 | 188 |
189 base::ClosePlatformFile(desktop_process.fd); | 189 base::ClosePlatformFile(desktop_process.fd); |
190 #endif // defined(OS_POSIX) | 190 #endif // defined(OS_POSIX) |
191 } | 191 } |
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
239 base::IgnoreResult(&base::SingleThreadTaskRunner::PostTask), | 239 base::IgnoreResult(&base::SingleThreadTaskRunner::PostTask), |
240 message_loop_.message_loop_proxy(), | 240 message_loop_.message_loop_proxy(), |
241 FROM_HERE, run_loop.QuitClosure()); | 241 FROM_HERE, run_loop.QuitClosure()); |
242 scoped_refptr<AutoThreadTaskRunner> ui_task_runner = new AutoThreadTaskRunner( | 242 scoped_refptr<AutoThreadTaskRunner> ui_task_runner = new AutoThreadTaskRunner( |
243 message_loop_.message_loop_proxy(), quit_ui_task_runner); | 243 message_loop_.message_loop_proxy(), quit_ui_task_runner); |
244 | 244 |
245 io_task_runner_ = AutoThread::CreateWithType( | 245 io_task_runner_ = AutoThread::CreateWithType( |
246 "IPC thread", ui_task_runner, base::MessageLoop::TYPE_IO); | 246 "IPC thread", ui_task_runner, base::MessageLoop::TYPE_IO); |
247 | 247 |
248 std::string channel_name = IPC::Channel::GenerateUniqueRandomChannelID(); | 248 std::string channel_name = IPC::Channel::GenerateUniqueRandomChannelID(); |
249 daemon_channel_.reset(new IPC::ChannelProxy(IPC::ChannelHandle(channel_name), | 249 daemon_channel_ = IPC::ChannelProxy::CreateServer( |
250 IPC::Channel::MODE_SERVER, | 250 IPC::ChannelHandle(channel_name), |
251 &daemon_listener_, | 251 &daemon_listener_, |
252 io_task_runner_.get())); | 252 io_task_runner_.get()); |
253 | 253 |
254 scoped_ptr<MockDesktopEnvironmentFactory> desktop_environment_factory( | 254 scoped_ptr<MockDesktopEnvironmentFactory> desktop_environment_factory( |
255 new MockDesktopEnvironmentFactory()); | 255 new MockDesktopEnvironmentFactory()); |
256 EXPECT_CALL(*desktop_environment_factory, CreatePtr()) | 256 EXPECT_CALL(*desktop_environment_factory, CreatePtr()) |
257 .Times(AnyNumber()) | 257 .Times(AnyNumber()) |
258 .WillRepeatedly(Invoke(this, | 258 .WillRepeatedly(Invoke(this, |
259 &DesktopProcessTest::CreateDesktopEnvironment)); | 259 &DesktopProcessTest::CreateDesktopEnvironment)); |
260 EXPECT_CALL(*desktop_environment_factory, SupportsAudioCapture()) | 260 EXPECT_CALL(*desktop_environment_factory, SupportsAudioCapture()) |
261 .Times(AnyNumber()) | 261 .Times(AnyNumber()) |
262 .WillRepeatedly(Return(false)); | 262 .WillRepeatedly(Return(false)); |
(...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
337 } | 337 } |
338 | 338 |
339 // Run the desktop process and ask it to crash. | 339 // Run the desktop process and ask it to crash. |
340 TEST_F(DesktopProcessTest, DeathTest) { | 340 TEST_F(DesktopProcessTest, DeathTest) { |
341 testing::GTEST_FLAG(death_test_style) = "threadsafe"; | 341 testing::GTEST_FLAG(death_test_style) = "threadsafe"; |
342 | 342 |
343 EXPECT_DEATH(RunDeathTest(), ""); | 343 EXPECT_DEATH(RunDeathTest(), ""); |
344 } | 344 } |
345 | 345 |
346 } // namespace remoting | 346 } // namespace remoting |
OLD | NEW |