1// Copyright (c) 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 CHROME_TEST_CHROMEDRIVER_CHROME_STUB_CHROME_H_
6#define CHROME_TEST_CHROMEDRIVER_CHROME_STUB_CHROME_H_
7
8#include <list>
9
10#include "base/compiler_specific.h"
11#include "base/memory/scoped_ptr.h"
12#include "chrome/test/chromedriver/chrome/browser_info.h"
13#include "chrome/test/chromedriver/chrome/chrome.h"
14
15class Status;
16class WebView;
17
18class StubChrome : public Chrome {
19 public:
20  StubChrome();
21  virtual ~StubChrome();
22
23  // Overridden from Chrome:
24  virtual ChromeDesktopImpl* GetAsDesktop() OVERRIDE;
25  virtual const BrowserInfo* GetBrowserInfo() OVERRIDE;
26  virtual bool HasCrashedWebView() OVERRIDE;
27  virtual Status GetWebViewIds(std::list<std::string>* web_view_ids) OVERRIDE;
28  virtual Status GetWebViewById(const std::string& id,
29                                WebView** web_view) OVERRIDE;
30  virtual Status CloseWebView(const std::string& id) OVERRIDE;
31  virtual Status ActivateWebView(const std::string& id) OVERRIDE;
32  virtual std::string GetOperatingSystemName() OVERRIDE;
33  virtual bool IsMobileEmulationEnabled() const OVERRIDE;
34  virtual Status Quit() OVERRIDE;
35
36 private:
37  BrowserInfo browser_info_;
38};
39
40#endif  // CHROME_TEST_CHROMEDRIVER_CHROME_STUB_CHROME_H_
41