Merge Chromium + Blink git repositories
[chromium-blink-merge.git] / extensions / browser / app_window / test_app_window_contents.h
blob97635aa176d6c37034f89f7d27b5cdb2260509e4
1 // Copyright 2014 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 EXTENSIONS_BROWSER_APP_WINDOW_TEST_APP_WINDOW_CONTENTS_
6 #define EXTENSIONS_BROWSER_APP_WINDOW_TEST_APP_WINDOW_CONTENTS_
8 #include "base/macros.h"
9 #include "extensions/browser/app_window/app_window.h"
11 namespace content {
12 class WebContents;
15 namespace extensions {
17 // A dummy version of AppWindowContents for unit tests.
18 // Best used with AppWindow::SetAppWindowContentsForTesting().
19 class TestAppWindowContents : public AppWindowContents {
20 public:
21 explicit TestAppWindowContents(content::WebContents* web_contents);
22 ~TestAppWindowContents() override;
24 // apps:AppWindowContents:
25 void Initialize(content::BrowserContext* context, const GURL& url) override;
26 void LoadContents(int32 creator_process_id) override;
27 void NativeWindowChanged(NativeAppWindow* native_app_window) override;
28 void NativeWindowClosed() override;
29 void DispatchWindowShownForTests() const override;
30 void OnWindowReady() override;
31 content::WebContents* GetWebContents() const override;
32 WindowController* GetWindowController() const override;
34 private:
35 scoped_ptr<content::WebContents> web_contents_;
37 DISALLOW_COPY_AND_ASSIGN(TestAppWindowContents);
40 } // namespace extensions
42 #endif // EXTENSIONS_BROWSER_APP_WINDOW_TEST_APP_WINDOW_CONTENTS_