OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/basictypes.h" | 5 #include "base/basictypes.h" |
6 #include "base/command_line.h" | 6 #include "base/command_line.h" |
7 #include "base/compiler_specific.h" | 7 #include "base/compiler_specific.h" |
8 #include "base/path_service.h" | 8 #include "base/path_service.h" |
9 #include "base/prefs/pref_registry_simple.h" | 9 #include "base/prefs/pref_registry_simple.h" |
10 #include "base/prefs/pref_service.h" | 10 #include "base/prefs/pref_service.h" |
(...skipping 822 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
833 EnrollmentScreen* screen = | 833 EnrollmentScreen* screen = |
834 WizardController::default_controller()->GetEnrollmentScreen(); | 834 WizardController::default_controller()->GetEnrollmentScreen(); |
835 EXPECT_EQ(screen, WizardController::default_controller()->current_screen()); | 835 EXPECT_EQ(screen, WizardController::default_controller()->current_screen()); |
836 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); | 836 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); |
837 | 837 |
838 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), | 838 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), |
839 WizardController::default_controller()->current_screen()); | 839 WizardController::default_controller()->current_screen()); |
840 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); | 840 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); |
841 } | 841 } |
842 | 842 |
| 843 class WizardControllerOobeResumeTest : public WizardControllerTest { |
| 844 protected: |
| 845 WizardControllerOobeResumeTest() {} |
| 846 // Overriden from InProcessBrowserTest: |
| 847 virtual void SetUpOnMainThread() OVERRIDE { |
| 848 WizardControllerTest::SetUpOnMainThread(); |
| 849 |
| 850 // Make sure that OOBE is run as an "official" build. |
| 851 WizardController::default_controller()->is_official_build_ = true; |
| 852 |
| 853 // Clear portal list (as it is by default in OOBE). |
| 854 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); |
| 855 |
| 856 // Set up the mocks for all screens. |
| 857 MOCK(mock_network_screen_, network_screen_, |
| 858 MockNetworkScreen, MockNetworkScreenActor); |
| 859 MOCK(mock_enrollment_screen_, enrollment_screen_, |
| 860 MockEnrollmentScreen, MockEnrollmentScreenActor); |
| 861 } |
| 862 |
| 863 void OnExit(ScreenObserver::ExitCodes exit_code) { |
| 864 WizardController::default_controller()->OnExit(exit_code); |
| 865 } |
| 866 |
| 867 std::string GetFirstScreenName() { |
| 868 return WizardController::default_controller()->first_screen_name(); |
| 869 } |
| 870 |
| 871 MockOutShowHide<MockNetworkScreen, MockNetworkScreenActor>* |
| 872 mock_network_screen_; |
| 873 MockOutShowHide<MockEnrollmentScreen, |
| 874 MockEnrollmentScreenActor>* mock_enrollment_screen_; |
| 875 |
| 876 private: |
| 877 DISALLOW_COPY_AND_ASSIGN(WizardControllerOobeResumeTest); |
| 878 }; |
| 879 |
| 880 IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest, |
| 881 PRE_ControlFlowResumeInterruptedOobe) { |
| 882 // Switch to the initial screen. |
| 883 EXPECT_CALL(*mock_network_screen_, Show()).Times(1); |
| 884 WizardController::default_controller()->AdvanceToScreen( |
| 885 WizardController::kNetworkScreenName); |
| 886 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), |
| 887 WizardController::default_controller()->current_screen()); |
| 888 EXPECT_CALL(*mock_enrollment_screen_->actor(), |
| 889 SetParameters(mock_enrollment_screen_, |
| 890 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL, |
| 891 "")) |
| 892 .Times(1); |
| 893 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); |
| 894 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); |
| 895 |
| 896 WizardController::default_controller()->AdvanceToScreen( |
| 897 WizardController::kEnrollmentScreenName); |
| 898 EXPECT_EQ(WizardController::default_controller()->GetEnrollmentScreen(), |
| 899 WizardController::default_controller()->current_screen()); |
| 900 } |
| 901 |
| 902 IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest, |
| 903 ControlFlowResumeInterruptedOobe) { |
| 904 EXPECT_EQ(WizardController::kEnrollmentScreenName, GetFirstScreenName()); |
| 905 } |
| 906 |
843 // TODO(dzhioev): Add test emaulating device with wrong HWID. | 907 // TODO(dzhioev): Add test emaulating device with wrong HWID. |
844 | 908 |
845 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 | 909 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 |
846 | 910 |
847 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when | 911 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when |
848 // UI and logic is ready. http://crbug.com/127016 | 912 // UI and logic is ready. http://crbug.com/127016 |
849 | 913 |
850 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 21, | 914 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 21, |
851 add_tests_for_new_control_flow_you_just_introduced); | 915 add_tests_for_new_control_flow_you_just_introduced); |
852 | 916 |
853 } // namespace chromeos | 917 } // namespace chromeos |
OLD | NEW |