| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| #include "chrome/browser/chromeos/login/wizard_in_process_browser_test.h" |
| |
| #include "base/command_line.h" |
| #include "base/message_loop/message_loop.h" |
| #include "chrome/browser/chrome_notification_types.h" |
| #include "chrome/browser/chromeos/login/login_display_host_impl.h" |
| #include "chrome/browser/chromeos/login/login_wizard.h" |
| #include "chrome/browser/chromeos/login/wizard_controller.h" |
| #include "chrome/browser/ui/browser.h" |
| #include "chrome/common/chrome_switches.h" |
| #include "chrome/test/base/ui_test_utils.h" |
| #include "chromeos/chromeos_switches.h" |
| #include "content/public/browser/notification_service.h" |
| |
| namespace chromeos { |
| |
| WizardInProcessBrowserTest::WizardInProcessBrowserTest(const char* screen_name) |
| : screen_name_(screen_name), |
| host_(NULL) { |
| } |
| |
| void WizardInProcessBrowserTest::SetUp() { |
| WizardController::SetZeroDelays(); |
| InProcessBrowserTest::SetUp(); |
| } |
| |
| void WizardInProcessBrowserTest::SetUpCommandLine(CommandLine* command_line) { |
| command_line->AppendSwitch(::switches::kNoStartupWindow); |
| command_line->AppendSwitch(switches::kLoginManager); |
| } |
| |
| void WizardInProcessBrowserTest::SetUpOnMainThread() { |
| SetUpWizard(); |
| if (!screen_name_.empty()) { |
| ShowLoginWizard(screen_name_); |
| host_ = LoginDisplayHostImpl::default_host(); |
| } |
| } |
| |
| void WizardInProcessBrowserTest::CleanUpOnMainThread() { |
| // LoginDisplayHost owns controllers and all windows. |
| base::MessageLoopForUI::current()->DeleteSoon(FROM_HERE, host_); |
| |
| base::MessageLoopForUI::current()->RunUntilIdle(); |
| } |
| |
| } // namespace chromeos |