OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/system/automatic_reboot_manager.h" | 5 #include "chrome/browser/chromeos/system/automatic_reboot_manager.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 | 8 |
9 #include "ash/shell.h" | 9 #include "ash/shell.h" |
10 #include "ash/test/test_shell_delegate.h" | 10 #include "ash/test/test_shell_delegate.h" |
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 } | 99 } |
100 | 100 |
101 private: | 101 private: |
102 ~TestAutomaticRebootManagerTaskRunner() override; | 102 ~TestAutomaticRebootManagerTaskRunner() override; |
103 | 103 |
104 // base::TestMockTimeTaskRunner: | 104 // base::TestMockTimeTaskRunner: |
105 void OnBeforeSelectingTask() override; | 105 void OnBeforeSelectingTask() override; |
106 void OnAfterTimePassed() override; | 106 void OnAfterTimePassed() override; |
107 void OnAfterTaskRun() override; | 107 void OnAfterTaskRun() override; |
108 | 108 |
109 scoped_ptr<MockUptimeProvider> uptime_provider_; | 109 std::unique_ptr<MockUptimeProvider> uptime_provider_; |
110 | 110 |
111 DISALLOW_COPY_AND_ASSIGN(TestAutomaticRebootManagerTaskRunner); | 111 DISALLOW_COPY_AND_ASSIGN(TestAutomaticRebootManagerTaskRunner); |
112 }; | 112 }; |
113 | 113 |
114 class MockAutomaticRebootManagerObserver | 114 class MockAutomaticRebootManagerObserver |
115 : public AutomaticRebootManagerObserver { | 115 : public AutomaticRebootManagerObserver { |
116 public: | 116 public: |
117 MockAutomaticRebootManagerObserver(); | 117 MockAutomaticRebootManagerObserver(); |
118 ~MockAutomaticRebootManagerObserver() override; | 118 ~MockAutomaticRebootManagerObserver() override; |
119 | 119 |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
179 // has increased by a small offset already. The offset is calculated and | 179 // has increased by a small offset already. The offset is calculated and |
180 // stored in |uptime_processing_delay_| so that tests can accurately determine | 180 // stored in |uptime_processing_delay_| so that tests can accurately determine |
181 // the uptime seen by the UI thread. | 181 // the uptime seen by the UI thread. |
182 base::TimeDelta uptime_processing_delay_; | 182 base::TimeDelta uptime_processing_delay_; |
183 base::TimeDelta update_reboot_needed_uptime_; | 183 base::TimeDelta update_reboot_needed_uptime_; |
184 base::TimeDelta uptime_limit_; | 184 base::TimeDelta uptime_limit_; |
185 | 185 |
186 scoped_refptr<TestAutomaticRebootManagerTaskRunner> task_runner_; | 186 scoped_refptr<TestAutomaticRebootManagerTaskRunner> task_runner_; |
187 | 187 |
188 MockAutomaticRebootManagerObserver automatic_reboot_manager_observer_; | 188 MockAutomaticRebootManagerObserver automatic_reboot_manager_observer_; |
189 scoped_ptr<AutomaticRebootManager> automatic_reboot_manager_; | 189 std::unique_ptr<AutomaticRebootManager> automatic_reboot_manager_; |
190 | 190 |
191 private: | 191 private: |
192 void VerifyTimerIsStopped(const base::OneShotTimer* timer) const; | 192 void VerifyTimerIsStopped(const base::OneShotTimer* timer) const; |
193 void VerifyTimerIsRunning(const base::OneShotTimer* timer, | 193 void VerifyTimerIsRunning(const base::OneShotTimer* timer, |
194 const base::TimeDelta& delay) const; | 194 const base::TimeDelta& delay) const; |
195 void VerifyLoginScreenIdleTimerIsRunning() const; | 195 void VerifyLoginScreenIdleTimerIsRunning() const; |
196 | 196 |
197 base::ScopedTempDir temp_dir_; | 197 base::ScopedTempDir temp_dir_; |
198 base::FilePath update_reboot_needed_uptime_file_; | 198 base::FilePath update_reboot_needed_uptime_file_; |
199 | 199 |
(...skipping 126 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
326 update_reboot_needed_uptime_file_ = | 326 update_reboot_needed_uptime_file_ = |
327 temp_dir.Append("update_reboot_needed_uptime"); | 327 temp_dir.Append("update_reboot_needed_uptime"); |
328 ASSERT_FALSE(base::WriteFile(update_reboot_needed_uptime_file_, NULL, 0)); | 328 ASSERT_FALSE(base::WriteFile(update_reboot_needed_uptime_file_, NULL, 0)); |
329 ASSERT_TRUE(PathService::Override(chromeos::FILE_UPTIME, uptime_file)); | 329 ASSERT_TRUE(PathService::Override(chromeos::FILE_UPTIME, uptime_file)); |
330 ASSERT_TRUE(PathService::Override(chromeos::FILE_UPDATE_REBOOT_NEEDED_UPTIME, | 330 ASSERT_TRUE(PathService::Override(chromeos::FILE_UPDATE_REBOOT_NEEDED_UPTIME, |
331 update_reboot_needed_uptime_file_)); | 331 update_reboot_needed_uptime_file_)); |
332 | 332 |
333 TestingBrowserProcess::GetGlobal()->SetLocalState(&local_state_); | 333 TestingBrowserProcess::GetGlobal()->SetLocalState(&local_state_); |
334 AutomaticRebootManager::RegisterPrefs(local_state_.registry()); | 334 AutomaticRebootManager::RegisterPrefs(local_state_.registry()); |
335 | 335 |
336 scoped_ptr<DBusThreadManagerSetter> dbus_setter = | 336 std::unique_ptr<DBusThreadManagerSetter> dbus_setter = |
337 chromeos::DBusThreadManager::GetSetterForTesting(); | 337 chromeos::DBusThreadManager::GetSetterForTesting(); |
338 power_manager_client_ = new FakePowerManagerClient; | 338 power_manager_client_ = new FakePowerManagerClient; |
339 dbus_setter->SetPowerManagerClient( | 339 dbus_setter->SetPowerManagerClient( |
340 scoped_ptr<PowerManagerClient>(power_manager_client_)); | 340 std::unique_ptr<PowerManagerClient>(power_manager_client_)); |
341 update_engine_client_ = new FakeUpdateEngineClient; | 341 update_engine_client_ = new FakeUpdateEngineClient; |
342 dbus_setter->SetUpdateEngineClient( | 342 dbus_setter->SetUpdateEngineClient( |
343 scoped_ptr<UpdateEngineClient>(update_engine_client_)); | 343 std::unique_ptr<UpdateEngineClient>(update_engine_client_)); |
344 | 344 |
345 EXPECT_CALL(*mock_user_manager_, IsUserLoggedIn()) | 345 EXPECT_CALL(*mock_user_manager_, IsUserLoggedIn()) |
346 .WillRepeatedly(ReturnPointee(&is_user_logged_in_)); | 346 .WillRepeatedly(ReturnPointee(&is_user_logged_in_)); |
347 EXPECT_CALL(*mock_user_manager_, IsLoggedInAsKioskApp()) | 347 EXPECT_CALL(*mock_user_manager_, IsLoggedInAsKioskApp()) |
348 .WillRepeatedly(ReturnPointee(&is_logged_in_as_kiosk_app_)); | 348 .WillRepeatedly(ReturnPointee(&is_logged_in_as_kiosk_app_)); |
349 } | 349 } |
350 | 350 |
351 void AutomaticRebootManagerBasicTest::TearDown() { | 351 void AutomaticRebootManagerBasicTest::TearDown() { |
352 if (automatic_reboot_manager_) { | 352 if (automatic_reboot_manager_) { |
353 Mock::VerifyAndClearExpectations(&automatic_reboot_manager_observer_); | 353 Mock::VerifyAndClearExpectations(&automatic_reboot_manager_observer_); |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
453 Mock::VerifyAndClearExpectations(&automatic_reboot_manager_observer_); | 453 Mock::VerifyAndClearExpectations(&automatic_reboot_manager_observer_); |
454 EXPECT_CALL(automatic_reboot_manager_observer_, | 454 EXPECT_CALL(automatic_reboot_manager_observer_, |
455 WillDestroyAutomaticRebootManager()).Times(0); | 455 WillDestroyAutomaticRebootManager()).Times(0); |
456 EXPECT_CALL(automatic_reboot_manager_observer_, | 456 EXPECT_CALL(automatic_reboot_manager_observer_, |
457 OnRebootRequested(_)).Times(0); | 457 OnRebootRequested(_)).Times(0); |
458 } | 458 } |
459 | 459 |
460 void AutomaticRebootManagerBasicTest::CreateAutomaticRebootManager( | 460 void AutomaticRebootManagerBasicTest::CreateAutomaticRebootManager( |
461 bool expect_reboot) { | 461 bool expect_reboot) { |
462 automatic_reboot_manager_.reset(new AutomaticRebootManager( | 462 automatic_reboot_manager_.reset(new AutomaticRebootManager( |
463 scoped_ptr<base::TickClock>(task_runner_->GetMockTickClock()))); | 463 std::unique_ptr<base::TickClock>(task_runner_->GetMockTickClock()))); |
464 automatic_reboot_manager_observer_.Init(automatic_reboot_manager_.get()); | 464 automatic_reboot_manager_observer_.Init(automatic_reboot_manager_.get()); |
465 task_runner_->RunUntilIdle(); | 465 task_runner_->RunUntilIdle(); |
466 EXPECT_EQ(expect_reboot ? 1 : 0, | 466 EXPECT_EQ(expect_reboot ? 1 : 0, |
467 power_manager_client_->num_request_restart_calls()); | 467 power_manager_client_->num_request_restart_calls()); |
468 | 468 |
469 uptime_processing_delay_ = | 469 uptime_processing_delay_ = |
470 base::TimeTicks() - automatic_reboot_manager_->boot_time_ - | 470 base::TimeTicks() - automatic_reboot_manager_->boot_time_ - |
471 uptime_provider()->uptime(); | 471 uptime_provider()->uptime(); |
472 EXPECT_GE(uptime_processing_delay_, base::TimeDelta()); | 472 EXPECT_GE(uptime_processing_delay_, base::TimeDelta()); |
473 EXPECT_LE(uptime_processing_delay_, base::TimeDelta::FromSeconds(1)); | 473 EXPECT_LE(uptime_processing_delay_, base::TimeDelta::FromSeconds(1)); |
(...skipping 1806 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2280 INSTANTIATE_TEST_CASE_P( | 2280 INSTANTIATE_TEST_CASE_P( |
2281 AutomaticRebootManagerTestInstance, | 2281 AutomaticRebootManagerTestInstance, |
2282 AutomaticRebootManagerTest, | 2282 AutomaticRebootManagerTest, |
2283 ::testing::Values( | 2283 ::testing::Values( |
2284 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_LOGIN_SCREEN, | 2284 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_LOGIN_SCREEN, |
2285 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_KIOSK_APP_SESSION, | 2285 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_KIOSK_APP_SESSION, |
2286 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_NON_KIOSK_APP_SESSION)); | 2286 AUTOMATIC_REBOOT_MANAGER_TEST_SCENARIO_NON_KIOSK_APP_SESSION)); |
2287 | 2287 |
2288 } // namespace system | 2288 } // namespace system |
2289 } // namespace chromeos | 2289 } // namespace chromeos |
OLD | NEW |