1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef CONTENT_SHELL_RENDERER_TEST_RUNNER_TESTINTERFACES_H_
6 #define CONTENT_SHELL_RENDERER_TEST_RUNNER_TESTINTERFACES_H_
10 #include "base/basictypes.h"
11 #include "base/memory/scoped_ptr.h"
12 #include "third_party/WebKit/public/platform/WebNonCopyable.h"
14 #if defined(__APPLE__)
15 #include "content/shell/renderer/test_runner/WebTestThemeEngineMac.h"
17 #include "content/shell/renderer/test_runner/WebTestThemeEngineMock.h"
28 class AccessibilityController
;
30 class GamepadController
;
32 class TextInputController
;
33 class WebTestProxyBase
;
36 namespace WebTestRunner
{
38 class WebTestDelegate
;
40 class TestInterfaces
{
45 void setWebView(blink::WebView
*, content::WebTestProxyBase
*);
46 void setDelegate(WebTestDelegate
*);
47 void bindTo(blink::WebFrame
*);
48 void resetTestHelperControllers();
50 void setTestIsRunning(bool);
51 void configureForTestWithURL(const blink::WebURL
&, bool generatePixels
);
53 void windowOpened(content::WebTestProxyBase
*);
54 void windowClosed(content::WebTestProxyBase
*);
56 content::AccessibilityController
* accessibilityController();
57 content::EventSender
* eventSender();
58 content::TestRunner
* testRunner();
59 WebTestDelegate
* delegate();
60 content::WebTestProxyBase
* proxy();
61 const std::vector
<content::WebTestProxyBase
*>& windowList();
62 blink::WebThemeEngine
* themeEngine();
65 scoped_ptr
<content::AccessibilityController
> m_accessibilityController
;
66 scoped_ptr
<content::EventSender
> m_eventSender
;
67 scoped_ptr
<content::GamepadController
> m_gamepadController
;
68 scoped_ptr
<content::TextInputController
> m_textInputController
;
69 scoped_ptr
<content::TestRunner
> m_testRunner
;
70 WebTestDelegate
* m_delegate
;
71 content::WebTestProxyBase
* m_proxy
;
73 std::vector
<content::WebTestProxyBase
*> m_windowList
;
74 #if defined(__APPLE__)
75 scoped_ptr
<WebTestThemeEngineMac
> m_themeEngine
;
77 scoped_ptr
<WebTestThemeEngineMock
> m_themeEngine
;
80 DISALLOW_COPY_AND_ASSIGN(TestInterfaces
);
85 #endif // CONTENT_SHELL_RENDERER_TEST_RUNNER_TESTINTERFACES_H_