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_BROWSER_CHROMEOS_LOGIN_SCREENS_MOCK_ERROR_SCREEN_H_
6#define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_MOCK_ERROR_SCREEN_H_
7
8#include "chrome/browser/chromeos/login/screens/error_screen.h"
9#include "chrome/browser/chromeos/login/screens/error_screen_actor.h"
10#include "testing/gmock/include/gmock/gmock.h"
11
12namespace chromeos {
13
14class MockErrorScreen : public ErrorScreen {
15 public:
16  MockErrorScreen(ScreenObserver* screen_observer, ErrorScreenActor* actor);
17  virtual ~MockErrorScreen();
18};
19
20class MockErrorScreenActor : public ErrorScreenActor {
21 public:
22  MockErrorScreenActor();
23  virtual ~MockErrorScreenActor();
24
25  MOCK_METHOD1(SetDelegate, void(ErrorScreenActorDelegate* delegate));
26  MOCK_METHOD2(Show, void(OobeDisplay::Screen parent_screen,
27                          base::DictionaryValue* params));
28  MOCK_METHOD3(Show, void(OobeDisplay::Screen parent_screen,
29                          base::DictionaryValue* params,
30                          const base::Closure& on_hide));
31  MOCK_METHOD0(Hide, void(void));
32  MOCK_METHOD0(FixCaptivePortal, void(void));
33  MOCK_METHOD0(ShowCaptivePortal, void(void));
34  MOCK_METHOD0(HideCaptivePortal, void(void));
35  MOCK_METHOD1(SetUIState, void(ErrorScreen::UIState ui_state));
36  MOCK_METHOD2(SetErrorState, void(ErrorScreen::ErrorState error_state,
37                                   const std::string& network));
38  MOCK_METHOD1(AllowGuestSignin, void(bool allowed));
39  MOCK_METHOD1(AllowOfflineLogin, void(bool allowed));
40  MOCK_METHOD1(ShowConnectingIndicator, void(bool show));
41};
42
43}  // namespace chromeos
44
45#endif  // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_MOCK_ERROR_SCREEN_H_
46