| // Copyright 2014 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_TEST_BASE_VIEW_EVENT_TEST_PLATFORM_PART_H_ |
| #define CHROME_TEST_BASE_VIEW_EVENT_TEST_PLATFORM_PART_H_ |
| |
| #include "base/macros.h" |
| #include "ui/gfx/native_widget_types.h" |
| |
| namespace ui { |
| class ContextFactory; |
| } |
| |
| // A helper class owned by tests that performs platform specific initialization. |
| // ViewEventTestPlatformPart behaves a bit like views::ViewsTestHelper, but on |
| // ChromeOS it will create an Ash shell environment, rather than using an |
| // AuraTestHelper. |
| class ViewEventTestPlatformPart { |
| public: |
| virtual ~ViewEventTestPlatformPart() {} |
| |
| // Set up the platform-specific environment. Teardown is performed in the |
| // destructor. |
| static ViewEventTestPlatformPart* Create(ui::ContextFactory* context_factory); |
| |
| // The Widget context for creating the test window. This will be the Ash root |
| // window on ChromeOS environments. Otherwise it should return NULL. |
| virtual gfx::NativeWindow GetContext() = 0; |
| |
| protected: |
| ViewEventTestPlatformPart() {} |
| |
| private: |
| DISALLOW_COPY_AND_ASSIGN(ViewEventTestPlatformPart); |
| }; |
| |
| #endif // CHROME_TEST_BASE_VIEW_EVENT_TEST_PLATFORM_PART_H_ |