OLD | NEW |
(Empty) | |
| 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. |
| 4 |
| 5 #ifndef TestInterfaces_h |
| 6 #define TestInterfaces_h |
| 7 |
| 8 #include <vector> |
| 9 |
| 10 #include "content/shell/renderer/test_runner/WebScopedPtr.h" |
| 11 #include "third_party/WebKit/public/platform/WebNonCopyable.h" |
| 12 |
| 13 #if defined(USE_DEFAULT_RENDER_THEME) |
| 14 #include "content/shell/renderer/test_runner/WebTestThemeEngineMock.h" |
| 15 #elif defined(WIN32) |
| 16 #include "content/shell/renderer/test_runner/WebTestThemeEngineWin.h" |
| 17 #elif defined(__APPLE__) |
| 18 #include "content/shell/renderer/test_runner/WebTestThemeEngineMac.h" |
| 19 #endif |
| 20 |
| 21 namespace blink { |
| 22 class WebFrame; |
| 23 class WebThemeEngine; |
| 24 class WebURL; |
| 25 class WebView; |
| 26 } |
| 27 |
| 28 namespace WebTestRunner { |
| 29 |
| 30 class AccessibilityController; |
| 31 class EventSender; |
| 32 class GamepadController; |
| 33 class TestRunner; |
| 34 class TextInputController; |
| 35 class WebTestDelegate; |
| 36 class WebTestProxyBase; |
| 37 |
| 38 class TestInterfaces : public blink::WebNonCopyable { |
| 39 public: |
| 40 TestInterfaces(); |
| 41 ~TestInterfaces(); |
| 42 |
| 43 void setWebView(blink::WebView*, WebTestProxyBase*); |
| 44 void setDelegate(WebTestDelegate*); |
| 45 void bindTo(blink::WebFrame*); |
| 46 void resetTestHelperControllers(); |
| 47 void resetAll(); |
| 48 void setTestIsRunning(bool); |
| 49 void configureForTestWithURL(const blink::WebURL&, bool generatePixels); |
| 50 |
| 51 void windowOpened(WebTestProxyBase*); |
| 52 void windowClosed(WebTestProxyBase*); |
| 53 |
| 54 AccessibilityController* accessibilityController(); |
| 55 EventSender* eventSender(); |
| 56 TestRunner* testRunner(); |
| 57 WebTestDelegate* delegate(); |
| 58 WebTestProxyBase* proxy(); |
| 59 const std::vector<WebTestProxyBase*>& windowList(); |
| 60 blink::WebThemeEngine* themeEngine(); |
| 61 |
| 62 private: |
| 63 WebScopedPtr<AccessibilityController> m_accessibilityController; |
| 64 WebScopedPtr<EventSender> m_eventSender; |
| 65 WebScopedPtr<GamepadController> m_gamepadController; |
| 66 WebScopedPtr<TextInputController> m_textInputController; |
| 67 WebScopedPtr<TestRunner> m_testRunner; |
| 68 WebTestDelegate* m_delegate; |
| 69 WebTestProxyBase* m_proxy; |
| 70 |
| 71 std::vector<WebTestProxyBase*> m_windowList; |
| 72 #if defined(USE_DEFAULT_RENDER_THEME) |
| 73 WebScopedPtr<WebTestThemeEngineMock> m_themeEngine; |
| 74 #elif defined(WIN32) |
| 75 WebScopedPtr<WebTestThemeEngineWin> m_themeEngine; |
| 76 #elif defined(__APPLE__) |
| 77 WebScopedPtr<WebTestThemeEngineMac> m_themeEngine; |
| 78 #endif |
| 79 }; |
| 80 |
| 81 } |
| 82 |
| 83 #endif // TestInterfaces_h |
OLD | NEW |