| 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 "base/bind.h" | 5 #include "base/bind.h" |
| 6 #include "base/bind_helpers.h" | 6 #include "base/bind_helpers.h" |
| 7 #include "base/memory/ref_counted.h" | 7 #include "base/memory/ref_counted.h" |
| 8 #include "base/single_thread_task_runner.h" | 8 #include "base/process.h" |
| 9 #include "ipc/ipc_message.h" | 9 #include "ipc/ipc_message.h" |
| 10 #include "ipc/ipc_message_macros.h" | 10 #include "ipc/ipc_message_macros.h" |
| 11 #include "ipc/ipc_platform_file.h" |
| 11 #include "remoting/base/auto_thread_task_runner.h" | 12 #include "remoting/base/auto_thread_task_runner.h" |
| 12 #include "remoting/host/chromoting_messages.h" | 13 #include "remoting/host/chromoting_messages.h" |
| 13 #include "remoting/host/daemon_process.h" | 14 #include "remoting/host/daemon_process.h" |
| 14 #include "remoting/host/desktop_session.h" | 15 #include "remoting/host/desktop_session.h" |
| 15 #include "testing/gmock_mutant.h" | 16 #include "testing/gmock_mutant.h" |
| 16 #include "testing/gmock/include/gmock/gmock.h" | 17 #include "testing/gmock/include/gmock/gmock.h" |
| 17 #include "testing/gtest/include/gtest/gtest.h" | 18 #include "testing/gtest/include/gtest/gtest.h" |
| 18 | 19 |
| 19 using testing::_; | 20 using testing::_; |
| 20 using testing::AnyNumber; | 21 using testing::AnyNumber; |
| (...skipping 19 matching lines...) Expand all Loading... |
| 40 FakeDesktopSession(DaemonProcess* daemon_process, int id); | 41 FakeDesktopSession(DaemonProcess* daemon_process, int id); |
| 41 virtual ~FakeDesktopSession(); | 42 virtual ~FakeDesktopSession(); |
| 42 | 43 |
| 43 private: | 44 private: |
| 44 DISALLOW_COPY_AND_ASSIGN(FakeDesktopSession); | 45 DISALLOW_COPY_AND_ASSIGN(FakeDesktopSession); |
| 45 }; | 46 }; |
| 46 | 47 |
| 47 class MockDaemonProcess : public DaemonProcess { | 48 class MockDaemonProcess : public DaemonProcess { |
| 48 public: | 49 public: |
| 49 MockDaemonProcess( | 50 MockDaemonProcess( |
| 50 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, | 51 scoped_refptr<AutoThreadTaskRunner> caller_task_runner, |
| 51 scoped_refptr<base::SingleThreadTaskRunner> io_task_runner, | 52 scoped_refptr<AutoThreadTaskRunner> io_task_runner, |
| 52 const base::Closure& stopped_callback); | 53 const base::Closure& stopped_callback); |
| 53 virtual ~MockDaemonProcess(); | 54 virtual ~MockDaemonProcess(); |
| 54 | 55 |
| 55 virtual scoped_ptr<DesktopSession> DoCreateDesktopSession( | 56 virtual scoped_ptr<DesktopSession> DoCreateDesktopSession( |
| 56 int terminal_id) OVERRIDE; | 57 int terminal_id) OVERRIDE; |
| 57 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; | 58 virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE; |
| 58 virtual void SendToNetwork(IPC::Message* message) OVERRIDE; | 59 virtual void SendToNetwork(IPC::Message* message) OVERRIDE; |
| 59 | 60 |
| 60 MOCK_METHOD1(Received, void(const IPC::Message&)); | 61 MOCK_METHOD1(Received, void(const IPC::Message&)); |
| 61 MOCK_METHOD1(Sent, void(const IPC::Message&)); | 62 MOCK_METHOD1(Sent, void(const IPC::Message&)); |
| 62 | 63 |
| 64 MOCK_METHOD3(OnDesktopSessionAgentAttached, |
| 65 bool(int, base::ProcessHandle, IPC::PlatformFileForTransit)); |
| 66 |
| 63 MOCK_METHOD1(DoCreateDesktopSessionPtr, DesktopSession*(int)); | 67 MOCK_METHOD1(DoCreateDesktopSessionPtr, DesktopSession*(int)); |
| 64 MOCK_METHOD0(LaunchNetworkProcess, void()); | 68 MOCK_METHOD0(LaunchNetworkProcess, void()); |
| 65 | 69 |
| 66 private: | 70 private: |
| 67 DISALLOW_COPY_AND_ASSIGN(MockDaemonProcess); | 71 DISALLOW_COPY_AND_ASSIGN(MockDaemonProcess); |
| 68 }; | 72 }; |
| 69 | 73 |
| 70 FakeDesktopSession::FakeDesktopSession(DaemonProcess* daemon_process, int id) | 74 FakeDesktopSession::FakeDesktopSession(DaemonProcess* daemon_process, int id) |
| 71 : DesktopSession(daemon_process, id) { | 75 : DesktopSession(daemon_process, id) { |
| 72 } | 76 } |
| 73 | 77 |
| 74 FakeDesktopSession::~FakeDesktopSession() { | 78 FakeDesktopSession::~FakeDesktopSession() { |
| 75 } | 79 } |
| 76 | 80 |
| 77 MockDaemonProcess::MockDaemonProcess( | 81 MockDaemonProcess::MockDaemonProcess( |
| 78 scoped_refptr<base::SingleThreadTaskRunner> caller_task_runner, | 82 scoped_refptr<AutoThreadTaskRunner> caller_task_runner, |
| 79 scoped_refptr<base::SingleThreadTaskRunner> io_task_runner, | 83 scoped_refptr<AutoThreadTaskRunner> io_task_runner, |
| 80 const base::Closure& stopped_callback) | 84 const base::Closure& stopped_callback) |
| 81 : DaemonProcess(caller_task_runner, io_task_runner, stopped_callback) { | 85 : DaemonProcess(caller_task_runner, io_task_runner, stopped_callback) { |
| 82 } | 86 } |
| 83 | 87 |
| 84 MockDaemonProcess::~MockDaemonProcess() { | 88 MockDaemonProcess::~MockDaemonProcess() { |
| 85 } | 89 } |
| 86 | 90 |
| 87 scoped_ptr<DesktopSession> MockDaemonProcess::DoCreateDesktopSession( | 91 scoped_ptr<DesktopSession> MockDaemonProcess::DoCreateDesktopSession( |
| 88 int terminal_id) { | 92 int terminal_id) { |
| 89 return scoped_ptr<DesktopSession>(DoCreateDesktopSessionPtr(terminal_id)); | 93 return scoped_ptr<DesktopSession>(DoCreateDesktopSessionPtr(terminal_id)); |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 306 EXPECT_EQ(1u, desktop_sessions().size()); | 310 EXPECT_EQ(1u, desktop_sessions().size()); |
| 307 EXPECT_EQ(id, desktop_sessions().front()->id()); | 311 EXPECT_EQ(id, desktop_sessions().front()->id()); |
| 308 | 312 |
| 309 EXPECT_TRUE(daemon_process_->OnMessageReceived( | 313 EXPECT_TRUE(daemon_process_->OnMessageReceived( |
| 310 ChromotingNetworkHostMsg_ConnectTerminal(id))); | 314 ChromotingNetworkHostMsg_ConnectTerminal(id))); |
| 311 EXPECT_TRUE(desktop_sessions().empty()); | 315 EXPECT_TRUE(desktop_sessions().empty()); |
| 312 EXPECT_EQ(0, terminal_id_); | 316 EXPECT_EQ(0, terminal_id_); |
| 313 } | 317 } |
| 314 | 318 |
| 315 } // namespace remoting | 319 } // namespace remoting |
| OLD | NEW |