Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(144)

Side by Side Diff: chrome/browser/chromeos/login/wizard_controller_browsertest.cc

Issue 1610823003: Migrate call sites LoginDisplayHostImpl::default_host to LoginDisplayHost. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@fix-add-supervised-user
Patch Set: Address comments Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "chrome/browser/chromeos/login/wizard_controller.h" 5 #include "chrome/browser/chromeos/login/wizard_controller.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/compiler_specific.h" 8 #include "base/compiler_specific.h"
9 #include "base/macros.h" 9 #include "base/macros.h"
10 #include "base/prefs/pref_registry_simple.h" 10 #include "base/prefs/pref_registry_simple.h"
(...skipping 21 matching lines...) Expand all
32 #include "chrome/browser/chromeos/login/screens/mock_eula_screen.h" 32 #include "chrome/browser/chromeos/login/screens/mock_eula_screen.h"
33 #include "chrome/browser/chromeos/login/screens/mock_network_screen.h" 33 #include "chrome/browser/chromeos/login/screens/mock_network_screen.h"
34 #include "chrome/browser/chromeos/login/screens/mock_update_screen.h" 34 #include "chrome/browser/chromeos/login/screens/mock_update_screen.h"
35 #include "chrome/browser/chromeos/login/screens/mock_wrong_hwid_screen.h" 35 #include "chrome/browser/chromeos/login/screens/mock_wrong_hwid_screen.h"
36 #include "chrome/browser/chromeos/login/screens/network_screen.h" 36 #include "chrome/browser/chromeos/login/screens/network_screen.h"
37 #include "chrome/browser/chromeos/login/screens/reset_screen.h" 37 #include "chrome/browser/chromeos/login/screens/reset_screen.h"
38 #include "chrome/browser/chromeos/login/screens/user_image_screen.h" 38 #include "chrome/browser/chromeos/login/screens/user_image_screen.h"
39 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h" 39 #include "chrome/browser/chromeos/login/screens/wrong_hwid_screen.h"
40 #include "chrome/browser/chromeos/login/startup_utils.h" 40 #include "chrome/browser/chromeos/login/startup_utils.h"
41 #include "chrome/browser/chromeos/login/test/wizard_in_process_browser_test.h" 41 #include "chrome/browser/chromeos/login/test/wizard_in_process_browser_test.h"
42 #include "chrome/browser/chromeos/login/ui/login_display_host_impl.h" 42 #include "chrome/browser/chromeos/login/ui/login_display_host.h"
43 #include "chrome/browser/chromeos/login/ui/webui_login_view.h" 43 #include "chrome/browser/chromeos/login/ui/webui_login_view.h"
44 #include "chrome/browser/chromeos/net/network_portal_detector_test_impl.h" 44 #include "chrome/browser/chromeos/net/network_portal_detector_test_impl.h"
45 #include "chrome/browser/chromeos/policy/enrollment_config.h" 45 #include "chrome/browser/chromeos/policy/enrollment_config.h"
46 #include "chrome/browser/chromeos/policy/server_backed_device_state.h" 46 #include "chrome/browser/chromeos/policy/server_backed_device_state.h"
47 #include "chrome/browser/chromeos/policy/stub_enterprise_install_attributes.h" 47 #include "chrome/browser/chromeos/policy/stub_enterprise_install_attributes.h"
48 #include "chrome/browser/chromeos/profiles/profile_helper.h" 48 #include "chrome/browser/chromeos/profiles/profile_helper.h"
49 #include "chrome/browser/profiles/profile_manager.h" 49 #include "chrome/browser/profiles/profile_manager.h"
50 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h" 50 #include "chrome/browser/ui/webui/chromeos/login/oobe_ui.h"
51 #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h" 51 #include "chrome/browser/ui/webui/chromeos/login/signin_screen_handler.h"
52 #include "chrome/common/chrome_switches.h" 52 #include "chrome/common/chrome_switches.h"
(...skipping 122 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 policy::AutoEnrollmentState expected_state, 175 policy::AutoEnrollmentState expected_state,
176 base::RunLoop* loop, 176 base::RunLoop* loop,
177 policy::AutoEnrollmentState actual_state) { 177 policy::AutoEnrollmentState actual_state) {
178 if (expected_state == actual_state) 178 if (expected_state == actual_state)
179 loop->Quit(); 179 loop->Quit();
180 } 180 }
181 181
182 void WaitForAutoEnrollmentState(policy::AutoEnrollmentState state) { 182 void WaitForAutoEnrollmentState(policy::AutoEnrollmentState state) {
183 base::RunLoop loop; 183 base::RunLoop loop;
184 AutoEnrollmentController* auto_enrollment_controller = 184 AutoEnrollmentController* auto_enrollment_controller =
185 LoginDisplayHostImpl::default_host()->GetAutoEnrollmentController(); 185 LoginDisplayHost::default_host()->GetAutoEnrollmentController();
186 scoped_ptr<AutoEnrollmentController::ProgressCallbackList::Subscription> 186 scoped_ptr<AutoEnrollmentController::ProgressCallbackList::Subscription>
187 progress_subscription( 187 progress_subscription(
188 auto_enrollment_controller->RegisterProgressCallback( 188 auto_enrollment_controller->RegisterProgressCallback(
189 base::Bind(&QuitLoopOnAutoEnrollmentProgress, state, &loop))); 189 base::Bind(&QuitLoopOnAutoEnrollmentProgress, state, &loop)));
190 loop.Run(); 190 loop.Run();
191 } 191 }
192 192
193 } // namespace 193 } // namespace
194 194
195 using ::testing::_; 195 using ::testing::_;
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 AccessibilityManager::Get()-> 249 AccessibilityManager::Get()->
250 SetProfileForTest(ProfileHelper::GetSigninProfile()); 250 SetProfileForTest(ProfileHelper::GetSigninProfile());
251 WizardInProcessBrowserTest::SetUpOnMainThread(); 251 WizardInProcessBrowserTest::SetUpOnMainThread();
252 } 252 }
253 253
254 ErrorScreen* GetErrorScreen() { 254 ErrorScreen* GetErrorScreen() {
255 return static_cast<BaseScreenDelegate*>( 255 return static_cast<BaseScreenDelegate*>(
256 WizardController::default_controller())->GetErrorScreen(); 256 WizardController::default_controller())->GetErrorScreen();
257 } 257 }
258 258
259 OobeUI* GetOobeUI() { 259 OobeUI* GetOobeUI() { return LoginDisplayHost::default_host()->GetOobeUI(); }
260 OobeUI* oobe_ui = static_cast<LoginDisplayHostImpl*>(
261 LoginDisplayHostImpl::default_host())->GetOobeUI();
262 return oobe_ui;
263 }
264 260
265 content::WebContents* GetWebContents() { 261 content::WebContents* GetWebContents() {
266 LoginDisplayHostImpl* host = static_cast<LoginDisplayHostImpl*>( 262 LoginDisplayHost* host = LoginDisplayHost::default_host();
267 LoginDisplayHostImpl::default_host());
268 if (!host) 263 if (!host)
269 return NULL; 264 return NULL;
270 WebUILoginView* webui_login_view = host->GetWebUILoginView(); 265 WebUILoginView* webui_login_view = host->GetWebUILoginView();
271 if (!webui_login_view) 266 if (!webui_login_view)
272 return NULL; 267 return NULL;
273 return webui_login_view->GetWebContents(); 268 return webui_login_view->GetWebContents();
274 } 269 }
275 270
276 void WaitUntilJSIsReady() { 271 void WaitUntilJSIsReady() {
277 LoginDisplayHostImpl* host = static_cast<LoginDisplayHostImpl*>( 272 LoginDisplayHost* host = LoginDisplayHost::default_host();
278 LoginDisplayHostImpl::default_host());
279 if (!host) 273 if (!host)
280 return; 274 return;
281 chromeos::OobeUI* oobe_ui = host->GetOobeUI(); 275 chromeos::OobeUI* oobe_ui = host->GetOobeUI();
282 if (!oobe_ui) 276 if (!oobe_ui)
283 return; 277 return;
284 base::RunLoop run_loop; 278 base::RunLoop run_loop;
285 const bool oobe_ui_ready = oobe_ui->IsJSReady(run_loop.QuitClosure()); 279 const bool oobe_ui_ready = oobe_ui->IsJSReady(run_loop.QuitClosure());
286 if (!oobe_ui_ready) 280 if (!oobe_ui_ready)
287 run_loop.Run(); 281 run_loop.Run();
288 } 282 }
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after
703 OnExit(*mock_enrollment_screen_, 697 OnExit(*mock_enrollment_screen_,
704 BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED); 698 BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED);
705 699
706 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 700 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
707 } 701 }
708 702
709 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest, 703 IN_PROC_BROWSER_TEST_F(WizardControllerFlowTest,
710 ControlFlowWrongHWIDScreenFromLogin) { 704 ControlFlowWrongHWIDScreenFromLogin) {
711 CheckCurrentScreen(WizardController::kNetworkScreenName); 705 CheckCurrentScreen(WizardController::kNetworkScreenName);
712 706
713 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext()); 707 LoginDisplayHost::default_host()->StartSignInScreen(LoginScreenContext());
714 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 708 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
715 ExistingUserController::current_controller()->ShowWrongHWIDScreen(); 709 ExistingUserController::current_controller()->ShowWrongHWIDScreen();
716 710
717 CheckCurrentScreen(WizardController::kWrongHWIDScreenName); 711 CheckCurrentScreen(WizardController::kWrongHWIDScreenName);
718 712
719 // After warning is skipped, user returns to sign-in screen. 713 // After warning is skipped, user returns to sign-in screen.
720 // And this destroys WizardController. 714 // And this destroys WizardController.
721 OnExit(*mock_wrong_hwid_screen_, 715 OnExit(*mock_wrong_hwid_screen_,
722 BaseScreenDelegate::WRONG_HWID_WARNING_SKIPPED); 716 BaseScreenDelegate::WRONG_HWID_WARNING_SKIPPED);
723 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); 717 EXPECT_FALSE(ExistingUserController::current_controller() == NULL);
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
807 CheckCurrentScreen(WizardController::kEnrollmentScreenName); 801 CheckCurrentScreen(WizardController::kEnrollmentScreenName);
808 OnExit(*mock_enrollment_screen_, 802 OnExit(*mock_enrollment_screen_,
809 BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED); 803 BaseScreenDelegate::ENTERPRISE_ENROLLMENT_COMPLETED);
810 804
811 EXPECT_TRUE(StartupUtils::IsOobeCompleted()); 805 EXPECT_TRUE(StartupUtils::IsOobeCompleted());
812 } 806 }
813 807
814 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest, 808 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest,
815 ControlFlowNoForcedReEnrollmentOnFirstBoot) { 809 ControlFlowNoForcedReEnrollmentOnFirstBoot) {
816 fake_statistics_provider_.ClearMachineStatistic(system::kActivateDateKey); 810 fake_statistics_provider_.ClearMachineStatistic(system::kActivateDateKey);
817 EXPECT_NE(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT, 811 EXPECT_NE(
818 LoginDisplayHostImpl::default_host() 812 policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT,
819 ->GetAutoEnrollmentController() 813 LoginDisplayHost::default_host()->GetAutoEnrollmentController()->state());
820 ->state());
821 814
822 CheckCurrentScreen(WizardController::kNetworkScreenName); 815 CheckCurrentScreen(WizardController::kNetworkScreenName);
823 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 816 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
824 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 817 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
825 OnExit(*mock_network_screen_, BaseScreenDelegate::NETWORK_CONNECTED); 818 OnExit(*mock_network_screen_, BaseScreenDelegate::NETWORK_CONNECTED);
826 819
827 CheckCurrentScreen(WizardController::kEulaScreenName); 820 CheckCurrentScreen(WizardController::kEulaScreenName);
828 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1); 821 EXPECT_CALL(*mock_eula_screen_, Hide()).Times(1);
829 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1); 822 EXPECT_CALL(*mock_update_screen_, StartNetworkCheck()).Times(1);
830 EXPECT_CALL(*mock_update_screen_, Show()).Times(1); 823 EXPECT_CALL(*mock_update_screen_, Show()).Times(1);
831 OnExit(*mock_eula_screen_, BaseScreenDelegate::EULA_ACCEPTED); 824 OnExit(*mock_eula_screen_, BaseScreenDelegate::EULA_ACCEPTED);
832 825
833 // Let update screen smooth time process (time = 0ms). 826 // Let update screen smooth time process (time = 0ms).
834 content::RunAllPendingInMessageLoop(); 827 content::RunAllPendingInMessageLoop();
835 828
836 CheckCurrentScreen(WizardController::kUpdateScreenName); 829 CheckCurrentScreen(WizardController::kUpdateScreenName);
837 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1); 830 EXPECT_CALL(*mock_update_screen_, Hide()).Times(1);
838 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1); 831 EXPECT_CALL(*mock_auto_enrollment_check_screen_, Show()).Times(1);
839 OnExit(*mock_update_screen_, BaseScreenDelegate::UPDATE_INSTALLED); 832 OnExit(*mock_update_screen_, BaseScreenDelegate::UPDATE_INSTALLED);
840 833
841 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName); 834 CheckCurrentScreen(WizardController::kAutoEnrollmentCheckScreenName);
842 mock_auto_enrollment_check_screen_->RealShow(); 835 mock_auto_enrollment_check_screen_->RealShow();
843 EXPECT_EQ(policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT, 836 EXPECT_EQ(
844 LoginDisplayHostImpl::default_host() 837 policy::AUTO_ENROLLMENT_STATE_NO_ENROLLMENT,
845 ->GetAutoEnrollmentController() 838 LoginDisplayHost::default_host()->GetAutoEnrollmentController()->state());
846 ->state());
847 } 839 }
848 840
849 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest, 841 IN_PROC_BROWSER_TEST_F(WizardControllerDeviceStateTest,
850 ControlFlowDeviceDisabled) { 842 ControlFlowDeviceDisabled) {
851 CheckCurrentScreen(WizardController::kNetworkScreenName); 843 CheckCurrentScreen(WizardController::kNetworkScreenName);
852 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1); 844 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
853 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1); 845 EXPECT_CALL(*mock_eula_screen_, Show()).Times(1);
854 OnExit(*mock_network_screen_, BaseScreenDelegate::NETWORK_CONNECTED); 846 OnExit(*mock_network_screen_, BaseScreenDelegate::NETWORK_CONNECTED);
855 847
856 CheckCurrentScreen(WizardController::kEulaScreenName); 848 CheckCurrentScreen(WizardController::kEulaScreenName);
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
999 991
1000 // Disabled, see https://crbug.com/504928. 992 // Disabled, see https://crbug.com/504928.
1001 IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest, 993 IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest,
1002 DISABLED_ProxyAuthDialogOnSigninScreen) { 994 DISABLED_ProxyAuthDialogOnSigninScreen) {
1003 content::WindowedNotificationObserver auth_needed_waiter( 995 content::WindowedNotificationObserver auth_needed_waiter(
1004 chrome::NOTIFICATION_AUTH_NEEDED, 996 chrome::NOTIFICATION_AUTH_NEEDED,
1005 content::NotificationService::AllSources()); 997 content::NotificationService::AllSources());
1006 998
1007 CheckCurrentScreen(WizardController::kNetworkScreenName); 999 CheckCurrentScreen(WizardController::kNetworkScreenName);
1008 1000
1009 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext()); 1001 LoginDisplayHost::default_host()->StartSignInScreen(LoginScreenContext());
1010 auth_needed_waiter.Wait(); 1002 auth_needed_waiter.Wait();
1011 } 1003 }
1012 1004
1013 class WizardControllerKioskFlowTest : public WizardControllerFlowTest { 1005 class WizardControllerKioskFlowTest : public WizardControllerFlowTest {
1014 protected: 1006 protected:
1015 WizardControllerKioskFlowTest() {} 1007 WizardControllerKioskFlowTest() {}
1016 1008
1017 // Overridden from InProcessBrowserTest: 1009 // Overridden from InProcessBrowserTest:
1018 void SetUpCommandLine(base::CommandLine* command_line) override { 1010 void SetUpCommandLine(base::CommandLine* command_line) override {
1019 base::FilePath test_data_dir; 1011 base::FilePath test_data_dir;
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
1228 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when 1220 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when
1229 // UI and logic is ready. http://crbug.com/127016 1221 // UI and logic is ready. http://crbug.com/127016
1230 1222
1231 // TODO(dzhioev): Add tests for controller/host pairing flow. 1223 // TODO(dzhioev): Add tests for controller/host pairing flow.
1232 // http://crbug.com/375191 1224 // http://crbug.com/375191
1233 1225
1234 static_assert(BaseScreenDelegate::EXIT_CODES_COUNT == 23, 1226 static_assert(BaseScreenDelegate::EXIT_CODES_COUNT == 23,
1235 "tests for new control flow are missing"); 1227 "tests for new control flow are missing");
1236 1228
1237 } // namespace chromeos 1229 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698