• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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.
4 
5 #ifndef CHROME_BROWSER_CHROMEOS_LOGIN_TEST_WIZARD_IN_PROCESS_BROWSER_TEST_H_
6 #define CHROME_BROWSER_CHROMEOS_LOGIN_TEST_WIZARD_IN_PROCESS_BROWSER_TEST_H_
7 
8 #include <string>
9 
10 #include "base/compiler_specific.h"
11 #include "chrome/test/base/in_process_browser_test.h"
12 
13 class Browser;
14 class Profile;
15 
16 namespace chromeos {
17 
18 class LoginDisplayHost;
19 class WizardController;
20 
21 // Base class for test related to login wizard and its screens.
22 // Instead of creating Chrome browser window it creates login wizard window
23 // with specified parameters and allows to customize environment at the
24 // right moment in time before wizard is created.
25 class WizardInProcessBrowserTest : public InProcessBrowserTest {
26  public:
27   explicit WizardInProcessBrowserTest(const char* screen_name);
28 
29   // Overridden from InProcessBrowserTest:
30   virtual void SetUp() OVERRIDE;
31 
32  protected:
33   // Can be overriden by derived test fixtures to set up environment after
34   // browser is created but wizard is not shown yet.
SetUpWizard()35   virtual void SetUpWizard() {}
36 
37   // Overriden from InProcessBrowserTest:
38   virtual void SetUpOnMainThread() OVERRIDE;
39   virtual void SetUpCommandLine(base::CommandLine* command_line) OVERRIDE;
40   virtual void CleanUpOnMainThread() OVERRIDE;
41 
42  private:
43   std::string screen_name_;
44   LoginDisplayHost* host_;
45 
46   DISALLOW_COPY_AND_ASSIGN(WizardInProcessBrowserTest);
47 };
48 
49 }  // namespace chromeos
50 
51 #endif  // CHROME_BROWSER_CHROMEOS_LOGIN_TEST_WIZARD_IN_PROCESS_BROWSER_TEST_H_
52