[go: nahoru, domu]

blob: 5102416cc887782adffffec77ca015c05d4245fa [file] [log] [blame]
Avi Drissman3a215d1e2022-09-07 19:43:091// Copyright 2016 The Chromium Authors
erg8f7f2a62016-11-03 00:20:202// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
James Cook346c8c62017-07-18 19:38:375#ifndef ASH_WM_LOCK_STATE_CONTROLLER_TEST_API_H_
6#define ASH_WM_LOCK_STATE_CONTROLLER_TEST_API_H_
erg8f7f2a62016-11-03 00:20:207
erg8f7f2a62016-11-03 00:20:208#include "ash/wm/lock_state_controller.h"
erg8f7f2a62016-11-03 00:20:209
10namespace ash {
11
Qiang Xu90fc06d2017-10-14 01:31:3912// Helper class used by tests to access LockStateController's internal state.
erg8f7f2a62016-11-03 00:20:2013class LockStateControllerTestApi {
14 public:
15 explicit LockStateControllerTestApi(LockStateController* controller);
Peter Boströmec31a042021-09-16 23:37:3416
17 LockStateControllerTestApi(const LockStateControllerTestApi&) = delete;
18 LockStateControllerTestApi& operator=(const LockStateControllerTestApi&) =
19 delete;
20
erg8f7f2a62016-11-03 00:20:2021 ~LockStateControllerTestApi();
22
jamescookd9f152f2016-11-15 00:53:0823 void set_shutdown_controller(ShutdownController* shutdown_controller) {
24 controller_->shutdown_controller_ = shutdown_controller;
25 }
erg8f7f2a62016-11-03 00:20:2026
27 bool lock_fail_timer_is_running() const {
28 return controller_->lock_fail_timer_.IsRunning();
29 }
erg8f7f2a62016-11-03 00:20:2030 bool shutdown_timer_is_running() const {
31 return controller_->pre_shutdown_timer_.IsRunning();
32 }
33 bool real_shutdown_timer_is_running() const {
34 return controller_->real_shutdown_timer_.IsRunning();
35 }
36 bool is_animating_lock() const { return controller_->animating_lock_; }
erg8f7f2a62016-11-03 00:20:2037
38 void trigger_lock_fail_timeout() {
39 controller_->OnLockFailTimeout();
40 controller_->lock_fail_timer_.Stop();
41 }
erg8f7f2a62016-11-03 00:20:2042 void trigger_shutdown_timeout() {
43 controller_->OnPreShutdownAnimationTimeout();
44 controller_->pre_shutdown_timer_.Stop();
45 }
46 void trigger_real_shutdown_timeout() {
47 controller_->OnRealPowerTimeout();
48 controller_->real_shutdown_timer_.Stop();
49 }
50
51 private:
52 LockStateController* controller_; // not owned
erg8f7f2a62016-11-03 00:20:2053};
54
erg8f7f2a62016-11-03 00:20:2055} // namespace ash
56
James Cook346c8c62017-07-18 19:38:3757#endif // ASH_WM_LOCK_STATE_CONTROLLER_TEST_API_H_