Index: chrome/browser/chromeos/login/wizard_controller_browsertest.cc |
diff --git a/chrome/browser/chromeos/login/wizard_controller_browsertest.cc b/chrome/browser/chromeos/login/wizard_controller_browsertest.cc |
index 19c46174e4de7fbefa306b9613420826341c17e7..ad630e1775077e0b648d3da9296f11ad731356d6 100644 |
--- a/chrome/browser/chromeos/login/wizard_controller_browsertest.cc |
+++ b/chrome/browser/chromeos/login/wizard_controller_browsertest.cc |
@@ -870,6 +870,71 @@ IN_PROC_BROWSER_TEST_F(WizardControllerKioskFlowTest, |
EXPECT_FALSE(StartupUtils::IsOobeCompleted()); |
} |
Mattias Nissler (ping if slow)
2014/05/15 09:30:25
remove extra blank line.
pastarmovj
2014/05/19 14:12:27
Done.
|
+ |
+class WizardControllerOobeResumeTest : public WizardControllerTest { |
+ protected: |
+ WizardControllerOobeResumeTest() {} |
+ // Overriden from InProcessBrowserTest: |
+ virtual void SetUpOnMainThread() OVERRIDE { |
+ WizardControllerTest::SetUpOnMainThread(); |
+ |
+ // Make sure that OOBE is run as an "official" build. |
+ WizardController::default_controller()->is_official_build_ = true; |
+ |
+ // Clear portal list (as it is by default in OOBE). |
+ NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); |
+ |
+ // Set up the mocks for all screens. |
+ MOCK(mock_network_screen_, network_screen_, |
+ MockNetworkScreen, MockNetworkScreenActor); |
+ MOCK(mock_enrollment_screen_, enrollment_screen_, |
+ MockEnrollmentScreen, MockEnrollmentScreenActor); |
+ } |
+ |
+ void OnExit(ScreenObserver::ExitCodes exit_code) { |
+ WizardController::default_controller()->OnExit(exit_code); |
+ } |
+ |
+ std::string GetFirstScreenName() { |
+ return WizardController::default_controller()->first_screen_name(); |
+ } |
+ |
+ MockOutShowHide<MockNetworkScreen, MockNetworkScreenActor>* |
+ mock_network_screen_; |
+ MockOutShowHide<MockEnrollmentScreen, |
+ MockEnrollmentScreenActor>* mock_enrollment_screen_; |
+ |
+ private: |
+ DISALLOW_COPY_AND_ASSIGN(WizardControllerOobeResumeTest); |
+}; |
+ |
+IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest, |
+ PRE_ControlFlowResumeInterruptedOobe) { |
+ // Switch to the initial screen. |
+ EXPECT_CALL(*mock_network_screen_, Show()).Times(1); |
+ WizardController::default_controller()->AdvanceToScreen( |
+ WizardController::kNetworkScreenName); |
+ EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), |
+ WizardController::default_controller()->current_screen()); |
+ EXPECT_CALL(*mock_enrollment_screen_->actor(), |
+ SetParameters(mock_enrollment_screen_, |
+ EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL, |
+ "")) |
+ .Times(1); |
+ EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); |
+ EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); |
+ |
+ WizardController::default_controller()->AdvanceToScreen( |
+ WizardController::kEnrollmentScreenName); |
+ EXPECT_EQ(WizardController::default_controller()->GetEnrollmentScreen(), |
+ WizardController::default_controller()->current_screen()); |
+} |
+ |
+IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest, |
+ ControlFlowResumeInterruptedOobe) { |
+ EXPECT_EQ(WizardController::kEnrollmentScreenName, GetFirstScreenName()); |
+} |
+ |
// TODO(dzhioev): Add test emaulating device with wrong HWID. |
// TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 |