| 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 "chrome/browser/chromeos/login/wizard_controller.h" | 5 #include "chrome/browser/chromeos/login/wizard_controller.h" |
| 6 | 6 |
| 7 #include "base/basictypes.h" | 7 #include "base/basictypes.h" |
| 8 #include "base/command_line.h" | 8 #include "base/command_line.h" |
| 9 #include "base/compiler_specific.h" | 9 #include "base/compiler_specific.h" |
| 10 #include "base/path_service.h" | 10 #include "base/path_service.h" |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 100 " \"dstOffset\" : 0.0,\n" | 100 " \"dstOffset\" : 0.0,\n" |
| 101 " \"rawOffset\" : -32400.0,\n" | 101 " \"rawOffset\" : -32400.0,\n" |
| 102 " \"status\" : \"OK\",\n" | 102 " \"status\" : \"OK\",\n" |
| 103 " \"timeZoneId\" : \"America/Anchorage\",\n" | 103 " \"timeZoneId\" : \"America/Anchorage\",\n" |
| 104 " \"timeZoneName\" : \"Pacific Standard Time\"\n" | 104 " \"timeZoneName\" : \"Pacific Standard Time\"\n" |
| 105 "}"; | 105 "}"; |
| 106 | 106 |
| 107 class PrefStoreStub : public TestingPrefStore { | 107 class PrefStoreStub : public TestingPrefStore { |
| 108 public: | 108 public: |
| 109 // TestingPrefStore overrides: | 109 // TestingPrefStore overrides: |
| 110 virtual PrefReadError GetReadError() const OVERRIDE { | 110 virtual PrefReadError GetReadError() const override { |
| 111 return PersistentPrefStore::PREF_READ_ERROR_JSON_PARSE; | 111 return PersistentPrefStore::PREF_READ_ERROR_JSON_PARSE; |
| 112 } | 112 } |
| 113 | 113 |
| 114 virtual bool IsInitializationComplete() const OVERRIDE { | 114 virtual bool IsInitializationComplete() const override { |
| 115 return true; | 115 return true; |
| 116 } | 116 } |
| 117 | 117 |
| 118 private: | 118 private: |
| 119 virtual ~PrefStoreStub() {} | 119 virtual ~PrefStoreStub() {} |
| 120 }; | 120 }; |
| 121 | 121 |
| 122 struct SwitchLanguageTestData { | 122 struct SwitchLanguageTestData { |
| 123 SwitchLanguageTestData() : success(false), done(false) {} | 123 SwitchLanguageTestData() : success(false), done(false) {} |
| 124 | 124 |
| (...skipping 92 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 217 ->screens_[WizardController::screen_name] = make_linked_ptr(mock_var); \ | 217 ->screens_[WizardController::screen_name] = make_linked_ptr(mock_var); \ |
| 218 EXPECT_CALL(*mock_var, Show()).Times(0); \ | 218 EXPECT_CALL(*mock_var, Show()).Times(0); \ |
| 219 EXPECT_CALL(*mock_var, Hide()).Times(0); | 219 EXPECT_CALL(*mock_var, Hide()).Times(0); |
| 220 | 220 |
| 221 class WizardControllerTest : public WizardInProcessBrowserTest { | 221 class WizardControllerTest : public WizardInProcessBrowserTest { |
| 222 protected: | 222 protected: |
| 223 WizardControllerTest() : WizardInProcessBrowserTest( | 223 WizardControllerTest() : WizardInProcessBrowserTest( |
| 224 WizardController::kTestNoScreenName) {} | 224 WizardController::kTestNoScreenName) {} |
| 225 virtual ~WizardControllerTest() {} | 225 virtual ~WizardControllerTest() {} |
| 226 | 226 |
| 227 virtual void SetUpOnMainThread() OVERRIDE { | 227 virtual void SetUpOnMainThread() override { |
| 228 AccessibilityManager::Get()-> | 228 AccessibilityManager::Get()-> |
| 229 SetProfileForTest(ProfileHelper::GetSigninProfile()); | 229 SetProfileForTest(ProfileHelper::GetSigninProfile()); |
| 230 WizardInProcessBrowserTest::SetUpOnMainThread(); | 230 WizardInProcessBrowserTest::SetUpOnMainThread(); |
| 231 } | 231 } |
| 232 | 232 |
| 233 ErrorScreen* GetErrorScreen() { | 233 ErrorScreen* GetErrorScreen() { |
| 234 return static_cast<ScreenObserver*>(WizardController::default_controller()) | 234 return static_cast<ScreenObserver*>(WizardController::default_controller()) |
| 235 ->GetErrorScreen(); | 235 ->GetErrorScreen(); |
| 236 } | 236 } |
| 237 | 237 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 338 cras->GetOutputVolumePercent()); | 338 cras->GetOutputVolumePercent()); |
| 339 } | 339 } |
| 340 | 340 |
| 341 class WizardControllerTestURLFetcherFactory | 341 class WizardControllerTestURLFetcherFactory |
| 342 : public net::TestURLFetcherFactory { | 342 : public net::TestURLFetcherFactory { |
| 343 public: | 343 public: |
| 344 virtual net::URLFetcher* CreateURLFetcher( | 344 virtual net::URLFetcher* CreateURLFetcher( |
| 345 int id, | 345 int id, |
| 346 const GURL& url, | 346 const GURL& url, |
| 347 net::URLFetcher::RequestType request_type, | 347 net::URLFetcher::RequestType request_type, |
| 348 net::URLFetcherDelegate* d) OVERRIDE { | 348 net::URLFetcherDelegate* d) override { |
| 349 if (StartsWithASCII( | 349 if (StartsWithASCII( |
| 350 url.spec(), | 350 url.spec(), |
| 351 SimpleGeolocationProvider::DefaultGeolocationProviderURL().spec(), | 351 SimpleGeolocationProvider::DefaultGeolocationProviderURL().spec(), |
| 352 true)) { | 352 true)) { |
| 353 return new net::FakeURLFetcher(url, | 353 return new net::FakeURLFetcher(url, |
| 354 d, | 354 d, |
| 355 std::string(kGeolocationResponseBody), | 355 std::string(kGeolocationResponseBody), |
| 356 net::HTTP_OK, | 356 net::HTTP_OK, |
| 357 net::URLRequestStatus::SUCCESS); | 357 net::URLRequestStatus::SUCCESS); |
| 358 } | 358 } |
| (...skipping 18 matching lines...) Expand all Loading... |
| 377 void Run() { loop_.Run(); } | 377 void Run() { loop_.Run(); } |
| 378 | 378 |
| 379 private: | 379 private: |
| 380 base::RunLoop loop_; | 380 base::RunLoop loop_; |
| 381 }; | 381 }; |
| 382 | 382 |
| 383 class WizardControllerFlowTest : public WizardControllerTest { | 383 class WizardControllerFlowTest : public WizardControllerTest { |
| 384 protected: | 384 protected: |
| 385 WizardControllerFlowTest() {} | 385 WizardControllerFlowTest() {} |
| 386 // Overriden from InProcessBrowserTest: | 386 // Overriden from InProcessBrowserTest: |
| 387 virtual void SetUpOnMainThread() OVERRIDE { | 387 virtual void SetUpOnMainThread() override { |
| 388 WizardControllerTest::SetUpOnMainThread(); | 388 WizardControllerTest::SetUpOnMainThread(); |
| 389 | 389 |
| 390 // Make sure that OOBE is run as an "official" build. | 390 // Make sure that OOBE is run as an "official" build. |
| 391 WizardController::default_controller()->is_official_build_ = true; | 391 WizardController::default_controller()->is_official_build_ = true; |
| 392 | 392 |
| 393 // Clear portal list (as it is by default in OOBE). | 393 // Clear portal list (as it is by default in OOBE). |
| 394 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); | 394 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); |
| 395 | 395 |
| 396 // Set up the mocks for all screens. | 396 // Set up the mocks for all screens. |
| 397 MOCK(mock_network_screen_, | 397 MOCK(mock_network_screen_, |
| (...skipping 297 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 695 // After warning is skipped, user returns to sign-in screen. | 695 // After warning is skipped, user returns to sign-in screen. |
| 696 // And this destroys WizardController. | 696 // And this destroys WizardController. |
| 697 OnExit(ScreenObserver::WRONG_HWID_WARNING_SKIPPED); | 697 OnExit(ScreenObserver::WRONG_HWID_WARNING_SKIPPED); |
| 698 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); | 698 EXPECT_FALSE(ExistingUserController::current_controller() == NULL); |
| 699 } | 699 } |
| 700 | 700 |
| 701 class WizardControllerEnrollmentFlowTest : public WizardControllerFlowTest { | 701 class WizardControllerEnrollmentFlowTest : public WizardControllerFlowTest { |
| 702 protected: | 702 protected: |
| 703 WizardControllerEnrollmentFlowTest() {} | 703 WizardControllerEnrollmentFlowTest() {} |
| 704 | 704 |
| 705 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 705 virtual void SetUpCommandLine(CommandLine* command_line) override { |
| 706 WizardControllerFlowTest::SetUpCommandLine(command_line); | 706 WizardControllerFlowTest::SetUpCommandLine(command_line); |
| 707 | 707 |
| 708 command_line->AppendSwitchASCII( | 708 command_line->AppendSwitchASCII( |
| 709 switches::kEnterpriseEnableForcedReEnrollment, | 709 switches::kEnterpriseEnableForcedReEnrollment, |
| 710 chromeos::AutoEnrollmentController::kForcedReEnrollmentAlways); | 710 chromeos::AutoEnrollmentController::kForcedReEnrollmentAlways); |
| 711 command_line->AppendSwitchASCII( | 711 command_line->AppendSwitchASCII( |
| 712 switches::kEnterpriseEnrollmentInitialModulus, "1"); | 712 switches::kEnterpriseEnrollmentInitialModulus, "1"); |
| 713 command_line->AppendSwitchASCII( | 713 command_line->AppendSwitchASCII( |
| 714 switches::kEnterpriseEnrollmentModulusLimit, "2"); | 714 switches::kEnterpriseEnrollmentModulusLimit, "2"); |
| 715 } | 715 } |
| (...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 773 } | 773 } |
| 774 | 774 |
| 775 class WizardControllerBrokenLocalStateTest : public WizardControllerTest { | 775 class WizardControllerBrokenLocalStateTest : public WizardControllerTest { |
| 776 protected: | 776 protected: |
| 777 WizardControllerBrokenLocalStateTest() | 777 WizardControllerBrokenLocalStateTest() |
| 778 : fake_session_manager_client_(NULL) { | 778 : fake_session_manager_client_(NULL) { |
| 779 } | 779 } |
| 780 | 780 |
| 781 virtual ~WizardControllerBrokenLocalStateTest() {} | 781 virtual ~WizardControllerBrokenLocalStateTest() {} |
| 782 | 782 |
| 783 virtual void SetUpInProcessBrowserTestFixture() OVERRIDE { | 783 virtual void SetUpInProcessBrowserTestFixture() override { |
| 784 WizardControllerTest::SetUpInProcessBrowserTestFixture(); | 784 WizardControllerTest::SetUpInProcessBrowserTestFixture(); |
| 785 | 785 |
| 786 fake_session_manager_client_ = new FakeSessionManagerClient; | 786 fake_session_manager_client_ = new FakeSessionManagerClient; |
| 787 DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( | 787 DBusThreadManager::GetSetterForTesting()->SetSessionManagerClient( |
| 788 scoped_ptr<SessionManagerClient>(fake_session_manager_client_)); | 788 scoped_ptr<SessionManagerClient>(fake_session_manager_client_)); |
| 789 } | 789 } |
| 790 | 790 |
| 791 virtual void SetUpOnMainThread() OVERRIDE { | 791 virtual void SetUpOnMainThread() override { |
| 792 base::PrefServiceFactory factory; | 792 base::PrefServiceFactory factory; |
| 793 factory.set_user_prefs(make_scoped_refptr(new PrefStoreStub())); | 793 factory.set_user_prefs(make_scoped_refptr(new PrefStoreStub())); |
| 794 local_state_ = factory.Create(new PrefRegistrySimple()).Pass(); | 794 local_state_ = factory.Create(new PrefRegistrySimple()).Pass(); |
| 795 WizardController::set_local_state_for_testing(local_state_.get()); | 795 WizardController::set_local_state_for_testing(local_state_.get()); |
| 796 | 796 |
| 797 WizardControllerTest::SetUpOnMainThread(); | 797 WizardControllerTest::SetUpOnMainThread(); |
| 798 | 798 |
| 799 // Make sure that OOBE is run as an "official" build. | 799 // Make sure that OOBE is run as an "official" build. |
| 800 WizardController::default_controller()->is_official_build_ = true; | 800 WizardController::default_controller()->is_official_build_ = true; |
| 801 } | 801 } |
| 802 | 802 |
| 803 virtual void TearDownInProcessBrowserTestFixture() OVERRIDE { | 803 virtual void TearDownInProcessBrowserTestFixture() override { |
| 804 WizardControllerTest::TearDownInProcessBrowserTestFixture(); | 804 WizardControllerTest::TearDownInProcessBrowserTestFixture(); |
| 805 } | 805 } |
| 806 | 806 |
| 807 | 807 |
| 808 FakeSessionManagerClient* fake_session_manager_client() const { | 808 FakeSessionManagerClient* fake_session_manager_client() const { |
| 809 return fake_session_manager_client_; | 809 return fake_session_manager_client_; |
| 810 } | 810 } |
| 811 | 811 |
| 812 private: | 812 private: |
| 813 scoped_ptr<PrefService> local_state_; | 813 scoped_ptr<PrefService> local_state_; |
| (...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 845 class WizardControllerProxyAuthOnSigninTest : public WizardControllerTest { | 845 class WizardControllerProxyAuthOnSigninTest : public WizardControllerTest { |
| 846 protected: | 846 protected: |
| 847 WizardControllerProxyAuthOnSigninTest() | 847 WizardControllerProxyAuthOnSigninTest() |
| 848 : proxy_server_(net::SpawnedTestServer::TYPE_BASIC_AUTH_PROXY, | 848 : proxy_server_(net::SpawnedTestServer::TYPE_BASIC_AUTH_PROXY, |
| 849 net::SpawnedTestServer::kLocalhost, | 849 net::SpawnedTestServer::kLocalhost, |
| 850 base::FilePath()) { | 850 base::FilePath()) { |
| 851 } | 851 } |
| 852 virtual ~WizardControllerProxyAuthOnSigninTest() {} | 852 virtual ~WizardControllerProxyAuthOnSigninTest() {} |
| 853 | 853 |
| 854 // Overridden from WizardControllerTest: | 854 // Overridden from WizardControllerTest: |
| 855 virtual void SetUp() OVERRIDE { | 855 virtual void SetUp() override { |
| 856 ASSERT_TRUE(proxy_server_.Start()); | 856 ASSERT_TRUE(proxy_server_.Start()); |
| 857 WizardControllerTest::SetUp(); | 857 WizardControllerTest::SetUp(); |
| 858 } | 858 } |
| 859 | 859 |
| 860 virtual void SetUpOnMainThread() OVERRIDE { | 860 virtual void SetUpOnMainThread() override { |
| 861 WizardControllerTest::SetUpOnMainThread(); | 861 WizardControllerTest::SetUpOnMainThread(); |
| 862 WizardController::default_controller()->AdvanceToScreen( | 862 WizardController::default_controller()->AdvanceToScreen( |
| 863 WizardController::kNetworkScreenName); | 863 WizardController::kNetworkScreenName); |
| 864 } | 864 } |
| 865 | 865 |
| 866 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 866 virtual void SetUpCommandLine(CommandLine* command_line) override { |
| 867 command_line->AppendSwitchASCII(::switches::kProxyServer, | 867 command_line->AppendSwitchASCII(::switches::kProxyServer, |
| 868 proxy_server_.host_port_pair().ToString()); | 868 proxy_server_.host_port_pair().ToString()); |
| 869 } | 869 } |
| 870 | 870 |
| 871 net::SpawnedTestServer& proxy_server() { return proxy_server_; } | 871 net::SpawnedTestServer& proxy_server() { return proxy_server_; } |
| 872 | 872 |
| 873 private: | 873 private: |
| 874 net::SpawnedTestServer proxy_server_; | 874 net::SpawnedTestServer proxy_server_; |
| 875 | 875 |
| 876 DISALLOW_COPY_AND_ASSIGN(WizardControllerProxyAuthOnSigninTest); | 876 DISALLOW_COPY_AND_ASSIGN(WizardControllerProxyAuthOnSigninTest); |
| 877 }; | 877 }; |
| 878 | 878 |
| 879 IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest, | 879 IN_PROC_BROWSER_TEST_F(WizardControllerProxyAuthOnSigninTest, |
| 880 ProxyAuthDialogOnSigninScreen) { | 880 ProxyAuthDialogOnSigninScreen) { |
| 881 content::WindowedNotificationObserver auth_needed_waiter( | 881 content::WindowedNotificationObserver auth_needed_waiter( |
| 882 chrome::NOTIFICATION_AUTH_NEEDED, | 882 chrome::NOTIFICATION_AUTH_NEEDED, |
| 883 content::NotificationService::AllSources()); | 883 content::NotificationService::AllSources()); |
| 884 | 884 |
| 885 CheckCurrentScreen(WizardController::kNetworkScreenName); | 885 CheckCurrentScreen(WizardController::kNetworkScreenName); |
| 886 | 886 |
| 887 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext()); | 887 LoginDisplayHostImpl::default_host()->StartSignInScreen(LoginScreenContext()); |
| 888 auth_needed_waiter.Wait(); | 888 auth_needed_waiter.Wait(); |
| 889 } | 889 } |
| 890 | 890 |
| 891 class WizardControllerKioskFlowTest : public WizardControllerFlowTest { | 891 class WizardControllerKioskFlowTest : public WizardControllerFlowTest { |
| 892 protected: | 892 protected: |
| 893 WizardControllerKioskFlowTest() {} | 893 WizardControllerKioskFlowTest() {} |
| 894 | 894 |
| 895 // Overridden from InProcessBrowserTest: | 895 // Overridden from InProcessBrowserTest: |
| 896 virtual void SetUpCommandLine(CommandLine* command_line) OVERRIDE { | 896 virtual void SetUpCommandLine(CommandLine* command_line) override { |
| 897 base::FilePath test_data_dir; | 897 base::FilePath test_data_dir; |
| 898 ASSERT_TRUE(chromeos::test_utils::GetTestDataPath( | 898 ASSERT_TRUE(chromeos::test_utils::GetTestDataPath( |
| 899 "app_mode", "kiosk_manifest", &test_data_dir)); | 899 "app_mode", "kiosk_manifest", &test_data_dir)); |
| 900 command_line->AppendSwitchPath( | 900 command_line->AppendSwitchPath( |
| 901 switches::kAppOemManifestFile, | 901 switches::kAppOemManifestFile, |
| 902 test_data_dir.AppendASCII("kiosk_manifest.json")); | 902 test_data_dir.AppendASCII("kiosk_manifest.json")); |
| 903 } | 903 } |
| 904 | 904 |
| 905 private: | 905 private: |
| 906 DISALLOW_COPY_AND_ASSIGN(WizardControllerKioskFlowTest); | 906 DISALLOW_COPY_AND_ASSIGN(WizardControllerKioskFlowTest); |
| (...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 990 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); | 990 OnExit(ScreenObserver::ENTERPRISE_ENROLLMENT_BACK); |
| 991 | 991 |
| 992 CheckCurrentScreen(WizardController::kNetworkScreenName); | 992 CheckCurrentScreen(WizardController::kNetworkScreenName); |
| 993 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); | 993 EXPECT_FALSE(StartupUtils::IsOobeCompleted()); |
| 994 } | 994 } |
| 995 | 995 |
| 996 class WizardControllerOobeResumeTest : public WizardControllerTest { | 996 class WizardControllerOobeResumeTest : public WizardControllerTest { |
| 997 protected: | 997 protected: |
| 998 WizardControllerOobeResumeTest() {} | 998 WizardControllerOobeResumeTest() {} |
| 999 // Overriden from InProcessBrowserTest: | 999 // Overriden from InProcessBrowserTest: |
| 1000 virtual void SetUpOnMainThread() OVERRIDE { | 1000 virtual void SetUpOnMainThread() override { |
| 1001 WizardControllerTest::SetUpOnMainThread(); | 1001 WizardControllerTest::SetUpOnMainThread(); |
| 1002 | 1002 |
| 1003 // Make sure that OOBE is run as an "official" build. | 1003 // Make sure that OOBE is run as an "official" build. |
| 1004 WizardController::default_controller()->is_official_build_ = true; | 1004 WizardController::default_controller()->is_official_build_ = true; |
| 1005 | 1005 |
| 1006 // Clear portal list (as it is by default in OOBE). | 1006 // Clear portal list (as it is by default in OOBE). |
| 1007 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); | 1007 NetworkHandler::Get()->network_state_handler()->SetCheckPortalList(""); |
| 1008 | 1008 |
| 1009 // Set up the mocks for all screens. | 1009 // Set up the mocks for all screens. |
| 1010 MOCK(mock_network_screen_, | 1010 MOCK(mock_network_screen_, |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1065 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when | 1065 // TODO(merkulova): Add tests for bluetooth HID detection screen variations when |
| 1066 // UI and logic is ready. http://crbug.com/127016 | 1066 // UI and logic is ready. http://crbug.com/127016 |
| 1067 | 1067 |
| 1068 // TODO(dzhioev): Add tests for controller/host pairing flow. | 1068 // TODO(dzhioev): Add tests for controller/host pairing flow. |
| 1069 // http://crbug.com/375191 | 1069 // http://crbug.com/375191 |
| 1070 | 1070 |
| 1071 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 23, | 1071 COMPILE_ASSERT(ScreenObserver::EXIT_CODES_COUNT == 23, |
| 1072 add_tests_for_new_control_flow_you_just_introduced); | 1072 add_tests_for_new_control_flow_you_just_introduced); |
| 1073 | 1073 |
| 1074 } // namespace chromeos | 1074 } // namespace chromeos |
| OLD | NEW |