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

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

Issue 275913004: Add a pref to track progress of OOBE and resume if needed. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix the logic when to skip resuming. Created 6 years, 7 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 | Annotate | Revision Log
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 "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 852 matching lines...) Expand 10 before | Expand all | Expand 10 after
863 EnrollmentScreen* screen = 863 EnrollmentScreen* screen =
864 WizardController::default_controller()->GetEnrollmentScreen(); 864 WizardController::default_controller()->GetEnrollmentScreen();
865 EXPECT_EQ(screen, WizardController::default_controller()->current_screen()); 865 EXPECT_EQ(screen, WizardController::default_controller()->current_screen());
866 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); 866 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK);
867 867
868 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(), 868 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(),
869 WizardController::default_controller()->current_screen()); 869 WizardController::default_controller()->current_screen());
870 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); 870 EXPECT_FALSE(StartupUtils::IsOobeCompleted());
871 } 871 }
872 872
873
874 class WizardControllerOobeResumeTest : public WizardControllerTest {
875 protected:
876 WizardControllerOobeResumeTest() {}
877 // Overriden from InProcessBrowserTest:
878 virtual void SetUpOnMainThread() OVERRIDE {
879 WizardControllerTest::SetUpOnMainThread();
880
881 // Make sure that OOBE is run as an "official" build.
882 WizardController::default_controller()->is_official_build_ = true;
883
884 // Clear portal list (as it is by default in OOBE).
885 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList("");
886
887 // Set up the mocks for all screens.
888 MOCK(mock_network_screen_, network_screen_,
889 MockNetworkScreen, MockNetworkScreenActor);
890 MOCK(mock_enrollment_screen_, enrollment_screen_,
891 MockEnrollmentScreen, MockEnrollmentScreenActor);
892 }
893
894 void OnExit(ScreenObserver::ExitCodes exit_code) {
895 WizardController::default_controller()->OnExit(exit_code);
896 }
897
898 std::string GetFirstScreenName() {
899 return WizardController::default_controller()->first_screen_name();
900 }
901
902 MockOutShowHide<MockNetworkScreen, MockNetworkScreenActor>*
903 mock_network_screen_;
904 MockOutShowHide<MockEnrollmentScreen,
905 MockEnrollmentScreenActor>* mock_enrollment_screen_;
906
907 private:
908 DISALLOW_COPY_AND_ASSIGN(WizardControllerOobeResumeTest);
909 };
910
Mattias Nissler (ping if slow) 2014/05/14 13:39:03 remove extra blank line
pastarmovj 2014/05/14 14:23:49 Done.
911
912 IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest,
913 PRE_ControlFlowResumeInterruptedOobe) {
914 // Switch to the initial screen.
915 EXPECT_CALL(*mock_network_screen_, Show()).Times(1);
916 WizardController::default_controller()->AdvanceToScreen(
917 WizardController::kNetworkScreenName);
918 EXPECT_EQ(WizardController::default_controller()->GetNetworkScreen(),
919 WizardController::default_controller()->current_screen());
920 EXPECT_CALL(*mock_enrollment_screen_->actor(),
921 SetParameters(mock_enrollment_screen_,
922 EnrollmentScreenActor::ENROLLMENT_MODE_MANUAL,
923 ""))
924 .Times(1);
925 EXPECT_CALL(*mock_enrollment_screen_, Show()).Times(1);
926 EXPECT_CALL(*mock_network_screen_, Hide()).Times(1);
927
928 WizardController::default_controller()->AdvanceToScreen(
929 WizardController::kEnrollmentScreenName);
930 EXPECT_EQ(WizardController::default_controller()->GetEnrollmentScreen(),
931 WizardController::default_controller()->current_screen());
932 }
933
934 IN_PROC_BROWSER_TEST_F(WizardControllerOobeResumeTest,
935 ControlFlowResumeInterruptedOobe) {
936 EXPECT_EQ(WizardController::kEnrollmentScreenName, GetFirstScreenName());
937 }
938
873 // TODO(dzhioev): Add test emaulating device with wrong HWID. 939 // TODO(dzhioev): Add test emaulating device with wrong HWID.
874 940
875 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571 941 // TODO(nkostylev): Add test for WebUI accelerators http://crosbug.com/22571
876 942
877 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when 943 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when
878 // UI and logic is ready. http://crbug.com/127016 944 // UI and logic is ready. http://crbug.com/127016
879 945
880 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 21, 946 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 21,
881 add_tests_for_new_control_flow_you_just_introduced); 947 add_tests_for_new_control_flow_you_just_introduced);
882 948
883 } // namespace chromeos 949 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698