| 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/command_line.h" | 5 #include "base/command_line.h" |
| 6 #include "base/path_service.h" | 6 #include "base/path_service.h" |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/browser/browser_process.h" | 8 #include "chrome/browser/browser_process.h" |
| 9 #include "chrome/browser/browser_shutdown.h" | 9 #include "chrome/browser/browser_shutdown.h" |
| 10 #include "chrome/browser/chromeos/cros/cros_library.h" | |
| 11 #include "chrome/browser/chromeos/cros/network_library.h" | |
| 12 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" | 10 #include "chrome/browser/chromeos/login/enrollment/enrollment_screen.h" |
| 13 #include "chrome/browser/chromeos/login/enrollment/mock_enrollment_screen.h" | 11 #include "chrome/browser/chromeos/login/enrollment/mock_enrollment_screen.h" |
| 14 #include "chrome/browser/chromeos/login/existing_user_controller.h" | 12 #include "chrome/browser/chromeos/login/existing_user_controller.h" |
| 15 #include "chrome/browser/chromeos/login/language_switch_menu.h" | 13 #include "chrome/browser/chromeos/login/language_switch_menu.h" |
| 16 #include "chrome/browser/chromeos/login/login_display_host_impl.h" | 14 #include "chrome/browser/chromeos/login/login_display_host_impl.h" |
| 17 #include "chrome/browser/chromeos/login/mock_authenticator.h" | 15 #include "chrome/browser/chromeos/login/mock_authenticator.h" |
| 18 #include "chrome/browser/chromeos/login/mock_login_status_consumer.h" | 16 #include "chrome/browser/chromeos/login/mock_login_status_consumer.h" |
| 19 #include "chrome/browser/chromeos/login/screens/mock_eula_screen.h" | 17 #include "chrome/browser/chromeos/login/screens/mock_eula_screen.h" |
| 20 #include "chrome/browser/chromeos/login/screens/mock_network_screen.h" | 18 #include "chrome/browser/chromeos/login/screens/mock_network_screen.h" |
| 21 #include "chrome/browser/chromeos/login/screens/mock_update_screen.h" | 19 #include "chrome/browser/chromeos/login/screens/mock_update_screen.h" |
| 22 #include "chrome/browser/chromeos/login/screens/network_screen.h" | 20 #include "chrome/browser/chromeos/login/screens/network_screen.h" |
| 23 #include "chrome/browser/chromeos/login/screens/reset_screen.h" | 21 #include "chrome/browser/chromeos/login/screens/reset_screen.h" |
| 24 #include "chrome/browser/chromeos/login/screens/user_image_screen.h" | 22 #include "chrome/browser/chromeos/login/screens/user_image_screen.h" |
| 25 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" | 23 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" |
| 26 #include "chrome/browser/chromeos/login/startup_utils.h" | 24 #include "chrome/browser/chromeos/login/startup_utils.h" |
| 27 #include "chrome/browser/chromeos/login/test_login_utils.h" | 25 #include "chrome/browser/chromeos/login/test_login_utils.h" |
| 28 #include "chrome/browser/chromeos/login/wizard_controller.h" | 26 #include "chrome/browser/chromeos/login/wizard_controller.h" |
| 29 #include "chrome/browser/chromeos/login/wizard_in_process_browser_test.h" | 27 #include "chrome/browser/chromeos/login/wizard_in_process_browser_test.h" |
| 30 #include "chrome/common/chrome_paths.h" | 28 #include "chrome/common/chrome_paths.h" |
| 31 #include "chrome/test/base/ui_test_utils.h" | 29 #include "chrome/test/base/ui_test_utils.h" |
| 32 #include "chromeos/chromeos_switches.h" | 30 #include "chromeos/chromeos_switches.h" |
| 33 #include "chromeos/chromeos_test_utils.h" | 31 #include "chromeos/chromeos_test_utils.h" |
| 32 #include "chromeos/network/network_state_handler.h" |
| 34 #include "grit/generated_resources.h" | 33 #include "grit/generated_resources.h" |
| 35 #include "testing/gmock/include/gmock/gmock.h" | 34 #include "testing/gmock/include/gmock/gmock.h" |
| 36 #include "testing/gtest/include/gtest/gtest.h" | 35 #include "testing/gtest/include/gtest/gtest.h" |
| 37 #include "third_party/icu/public/common/unicode/locid.h" | 36 #include "third_party/icu/public/common/unicode/locid.h" |
| 38 #include "ui/base/accelerators/accelerator.h" | 37 #include "ui/base/accelerators/accelerator.h" |
| 39 #include "ui/base/l10n/l10n_util.h" | 38 #include "ui/base/l10n/l10n_util.h" |
| 40 | 39 |
| 41 namespace chromeos { | 40 namespace chromeos { |
| 42 | 41 |
| 43 namespace { | 42 namespace { |
| (...skipping 71 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 115 protected: | 114 protected: |
| 116 WizardControllerFlowTest() {} | 115 WizardControllerFlowTest() {} |
| 117 // Overriden from InProcessBrowserTest: | 116 // Overriden from InProcessBrowserTest: |
| 118 virtual void SetUpOnMainThread() OVERRIDE { | 117 virtual void SetUpOnMainThread() OVERRIDE { |
| 119 WizardControllerTest::SetUpOnMainThread(); | 118 WizardControllerTest::SetUpOnMainThread(); |
| 120 | 119 |
| 121 // Make sure that OOBE is run as an "official" build. | 120 // Make sure that OOBE is run as an "official" build. |
| 122 WizardController::default_controller()->is_official_build_ = true; | 121 WizardController::default_controller()->is_official_build_ = true; |
| 123 | 122 |
| 124 // Clear portal list (as it is by default in OOBE). | 123 // Clear portal list (as it is by default in OOBE). |
| 125 CrosLibrary::Get()->GetNetworkLibrary()->SetCheckPortalList(""); | 124 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); |
| 126 | 125 |
| 127 // Set up the mocks for all screens. | 126 // Set up the mocks for all screens. |
| 128 MOCK(mock_network_screen_, network_screen_, | 127 MOCK(mock_network_screen_, network_screen_, |
| 129 MockNetworkScreen, MockNetworkScreenActor); | 128 MockNetworkScreen, MockNetworkScreenActor); |
| 130 MOCK(mock_update_screen_, update_screen_, | 129 MOCK(mock_update_screen_, update_screen_, |
| 131 MockUpdateScreen, MockUpdateScreenActor); | 130 MockUpdateScreen, MockUpdateScreenActor); |
| 132 MOCK(mock_eula_screen_, eula_screen_, MockEulaScreen, MockEulaScreenActor); | 131 MOCK(mock_eula_screen_, eula_screen_, MockEulaScreen, MockEulaScreenActor); |
| 133 MOCK(mock_enrollment_screen_, enrollment_screen_, | 132 MOCK(mock_enrollment_screen_, enrollment_screen_, |
| 134 MockEnrollmentScreen, MockEnrollmentScreenActor); | 133 MockEnrollmentScreen, MockEnrollmentScreenActor); |
| 135 | 134 |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 172 // Let update screen smooth time process (time = 0ms). | 171 // Let update screen smooth time process (time = 0ms). |
| 173 content::RunAllPendingInMessageLoop(); | 172 content::RunAllPendingInMessageLoop(); |
| 174 | 173 |
| 175 EXPECT_EQ(WizardController::default_controller()->GetUpdateScreen(), | 174 EXPECT_EQ(WizardController::default_controller()->GetUpdateScreen(), |
| 176 WizardController::default_controller()->current_screen()); | 175 WizardController::default_controller()->current_screen()); |
| 177 EXPECT_CALL(*mock_update_screen_, Hide()).Times(0); | 176 EXPECT_CALL(*mock_update_screen_, Hide()).Times(0); |
| 178 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0); | 177 EXPECT_CALL(*mock_eula_screen_, Show()).Times(0); |
| 179 OnExit(ScreenObserver::UPDATE_INSTALLED); | 178 OnExit(ScreenObserver::UPDATE_INSTALLED); |
| 180 | 179 |
| 181 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); | 180 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); |
| 182 EXPECT_EQ("ethernet,wifi,cellular", | 181 EXPECT_EQ( |
| 183 CrosLibrary::Get()->GetNetworkLibrary()->GetCheckPortalList()); | 182 "ethernet,wifi,cellular", |
| 183 NetworkHandler::Get()->network_state_handler()->check_portal_list()); |
| 184 } | 184 } |
| 185 | 185 |
| 186 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowErrorUpdate) { | 186 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowErrorUpdate) { |
| 187 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), | 187 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), |
| 188 WizardController::default_controller()->current_screen()); | 188 WizardController::default_controller()->current_screen()); |
| 189 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); | 189 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); |
| 190 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); | 190 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); |
| 191 EXPECT_CALL(*mock_update_screen_, Show()).Times(0); | 191 EXPECT_CALL(*mock_update_screen_, Show()).Times(0); |
| 192 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); | 192 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); |
| 193 OnExit(ScreenObserver::NETWORK_CONNECTED); | 193 OnExit(ScreenObserver::NETWORK_CONNECTED); |
| (...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 228 WizardController::default_controller()->SkipUpdateEnrollAfterEula(); | 228 WizardController::default_controller()->SkipUpdateEnrollAfterEula(); |
| 229 EXPECT_CALL(*mock_enrollment_screen_->actor(), | 229 EXPECT_CALL(*mock_enrollment_screen_->actor(), |
| 230 SetParameters(mock_enrollment_screen_, | 230 SetParameters(mock_enrollment_screen_, |
| 231 false, // is_auto_enrollment | 231 false, // is_auto_enrollment |
| 232 true, // can_exit_enrollment | 232 true, // can_exit_enrollment |
| 233 "")) | 233 "")) |
| 234 .Times(1); | 234 .Times(1); |
| 235 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); | 235 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1); |
| 236 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(0); | 236 EXPECT_CALL(*mock_enrollment_screen_, Hide()).Times(0); |
| 237 OnExit(ScreenObserver::EULA_ACCEPTED); | 237 OnExit(ScreenObserver::EULA_ACCEPTED); |
| 238 content::RunAllPendingInMessageLoop(); |
| 238 | 239 |
| 239 EXPECT_EQ(WizardController::default_controller()->GetEnrollmentScreen(), | 240 EXPECT_EQ(WizardController::default_controller()->GetEnrollmentScreen(), |
| 240 WizardController::default_controller()->current_screen()); | 241 WizardController::default_controller()->current_screen()); |
| 241 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); | 242 EXPECT_TRUE(ExistingUserController::current_controller() == NULL); |
| 242 EXPECT_EQ("ethernet,wifi,cellular", | 243 EXPECT_EQ( |
| 243 CrosLibrary::Get()->GetNetworkLibrary()->GetCheckPortalList()); | 244 "ethernet,wifi,cellular", |
| 245 NetworkHandler::Get()->network_state_handler()->check_portal_list()); |
| 244 } | 246 } |
| 245 | 247 |
| 246 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowEulaDeclined) { | 248 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, ControlFlowEulaDeclined) { |
| 247 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), | 249 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), |
| 248 WizardController::default_controller()->current_screen()); | 250 WizardController::default_controller()->current_screen()); |
| 249 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); | 251 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(0); |
| 250 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); | 252 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); |
| 251 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); | 253 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); |
| 252 OnExit(ScreenObserver::NETWORK_CONNECTED); | 254 OnExit(ScreenObserver::NETWORK_CONNECTED); |
| 253 | 255 |
| (...skipping 165 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 419 } | 421 } |
| 420 | 422 |
| 421 // TODO(dzhioev): Add test emaulating device with wrong HWID. | 423 // TODO(dzhioev): Add test emaulating device with wrong HWID. |
| 422 | 424 |
| 423 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 | 425 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 |
| 424 | 426 |
| 425 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 15, | 427 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 15, |
| 426 add_tests_for_new_control_flow_you_just_introduced); | 428 add_tests_for_new_control_flow_you_just_introduced); |
| 427 | 429 |
| 428 } // namespace chromeos | 430 } // namespace chromeos |
| OLD | NEW |