diff options
Diffstat (limited to 'chrome_frame/test/proxy_factory_mock.h')
-rw-r--r-- | chrome_frame/test/proxy_factory_mock.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/chrome_frame/test/proxy_factory_mock.h b/chrome_frame/test/proxy_factory_mock.h new file mode 100644 index 0000000..8f2bb2e --- /dev/null +++ b/chrome_frame/test/proxy_factory_mock.h @@ -0,0 +1,43 @@ +// Copyright (c) 2006-2010 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. +#ifndef CHROME_FRAME_PROXY_FACTORY_MOCK_H_ +#define CHROME_FRAME_PROXY_FACTORY_MOCK_H_ + +#include <windows.h> +#include <string> + +#include "gmock/gmock.h" +#include "chrome_frame/chrome_frame_automation.h" + +struct LaunchDelegateMock : public ProxyFactory::LaunchDelegate { + MOCK_METHOD2(LaunchComplete, void(ChromeFrameAutomationProxy*, + AutomationLaunchResult)); +}; + +class MockProxyFactory : public ProxyFactory { + public: + MOCK_METHOD3(GetAutomationServer, void (ProxyFactory::LaunchDelegate*, + const ChromeFrameLaunchParams& params, void** automation_server_id)); + MOCK_METHOD1(ReleaseAutomationServer, bool(void* id)); + + MockProxyFactory() : thread_("mock factory worker") { + thread_.Start(); + loop_ = thread_.message_loop(); + } + + // Fake implementation + void GetServerImpl(ChromeFrameAutomationProxy* pxy, + void* proxy_id, + AutomationLaunchResult result, + LaunchDelegate* d, + const ChromeFrameLaunchParams& params, + void** automation_server_id); + + base::Thread thread_; + MessageLoop* loop_; +}; + + +#endif // CHROME_FRAME_PROXY_FACTORY_MOCK_H_ + |