1// Copyright (c) 2012 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_WIZARD_SCREEN_H_
6#define CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_WIZARD_SCREEN_H_
7
8#include <string>
9
10#include "base/gtest_prod_util.h"
11#include "chrome/browser/chromeos/login/screens/base_screen.h"
12
13namespace chromeos {
14
15class ScreenObserver;
16
17// Base class for the OOBE screens.
18class WizardScreen : public BaseScreen {
19 public:
20  explicit WizardScreen(ScreenObserver* screen_observer);
21  virtual ~WizardScreen() {}
22
23 protected:
24  ScreenObserver* get_screen_observer() const {
25    return screen_observer_;
26  }
27
28 private:
29  FRIEND_TEST_ALL_PREFIXES(EnrollmentScreenTest, TestCancel);
30  FRIEND_TEST_ALL_PREFIXES(EnrollmentScreenTest, TestSuccess);
31  FRIEND_TEST_ALL_PREFIXES(ProvisionedEnrollmentScreenTest, TestBackButton);
32  friend class NetworkScreenTest;
33  friend class UpdateScreenTest;
34
35  ScreenObserver* screen_observer_;
36};
37
38}  // namespace chromeos
39
40#endif  // CHROME_BROWSER_CHROMEOS_LOGIN_SCREENS_WIZARD_SCREEN_H_
41