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

Side by Side Diff: ash/wm/power_button_controller_unittest.cc

Issue 10909008: Improve existing lock transition - remove black splash. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: +comment Created 8 years, 3 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 "ash/wm/power_button_controller.h" 5 #include "ash/wm/power_button_controller.h"
6 6
7 #include "ash/shell.h" 7 #include "ash/shell.h"
8 #include "ash/test/ash_test_base.h" 8 #include "ash/test/ash_test_base.h"
9 #include "ash/wm/cursor_manager.h" 9 #include "ash/wm/cursor_manager.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 EXPECT_EQ(1, delegate_->num_lock_requests()); 92 EXPECT_EQ(1, delegate_->num_lock_requests());
93 93
94 // Notify that we locked successfully. 94 // Notify that we locked successfully.
95 controller_->OnStartingLock(); 95 controller_->OnStartingLock();
96 EXPECT_TRUE( 96 EXPECT_TRUE(
97 test_api_->ContainerGroupIsAnimated( 97 test_api_->ContainerGroupIsAnimated(
98 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS, 98 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS,
99 PowerButtonController::ANIMATION_FAST_CLOSE)); 99 PowerButtonController::ANIMATION_FAST_CLOSE));
100 EXPECT_TRUE( 100 EXPECT_TRUE(
101 test_api_->ContainerGroupIsAnimated( 101 test_api_->ContainerGroupIsAnimated(
102 PowerButtonController::SCREEN_LOCKER_CONTAINERS, 102 PowerButtonController::SCREEN_LOCKER_CONTAINERS_EXCEPT_WALLPAPER,
103 PowerButtonController::ANIMATION_HIDE)); 103 PowerButtonController::ANIMATION_HIDE));
104 104
105 // Notify that the lock window is visible. We should make it fade in. 105 // Notify that the lock window is visible. We should make it fade in.
106 controller_->OnLockStateChanged(true); 106 controller_->OnLockStateChanged(true);
107 EXPECT_TRUE( 107 EXPECT_TRUE(
108 test_api_->ContainerGroupIsAnimated( 108 test_api_->ContainerGroupIsAnimated(
109 PowerButtonController::SCREEN_LOCKER_AND_RELATED_CONTAINERS, 109 PowerButtonController::SCREEN_LOCKER_AND_RELATED_CONTAINERS,
110 PowerButtonController::ANIMATION_FADE_IN)); 110 PowerButtonController::ANIMATION_FADE_IN));
111 111
112 // We shouldn't progress towards the shutdown state, however. 112 // We shouldn't progress towards the shutdown state, however.
113 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running()); 113 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running());
114 EXPECT_FALSE(test_api_->shutdown_timer_is_running()); 114 EXPECT_FALSE(test_api_->shutdown_timer_is_running());
115 controller_->OnPowerButtonEvent(false, base::TimeTicks::Now()); 115 controller_->OnPowerButtonEvent(false, base::TimeTicks::Now());
116 116
117 // Hold the button again and check that we start shutting down. 117 // Hold the button again and check that we start shutting down.
118 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now()); 118 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now());
119 EXPECT_EQ(0, delegate_->num_shutdown_requests()); 119 EXPECT_EQ(0, delegate_->num_shutdown_requests());
120 // Previously we're checking that ALL_CONTAINERS are animated which was in
121 // fact checking that
122 // 1. ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS have transform
123 // (including wallpaper). They're in this state after lock.
124 // 2. SCREEN_LOCKER_AND_RELATED_CONTAINERS are in fact animating
125 // (shutdown is in progress).
126 // With http://crbug.com/144737 we no longer animate wallpaper during lock
127 // so it makes sense only to check that SCREEN_LOCKER_AND_RELATED_CONTAINERS
128 // are animated during shutdown.
120 EXPECT_TRUE( 129 EXPECT_TRUE(
121 test_api_->ContainerGroupIsAnimated( 130 test_api_->ContainerGroupIsAnimated(
122 PowerButtonController::ALL_CONTAINERS, 131 PowerButtonController::SCREEN_LOCKER_AND_RELATED_CONTAINERS,
123 PowerButtonController::ANIMATION_FAST_CLOSE)); 132 PowerButtonController::ANIMATION_FAST_CLOSE));
124 EXPECT_FALSE(cursor_visible()); 133 EXPECT_FALSE(cursor_visible());
125 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); 134 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running());
126 test_api_->trigger_real_shutdown_timeout(); 135 test_api_->trigger_real_shutdown_timeout();
127 EXPECT_EQ(1, delegate_->num_shutdown_requests()); 136 EXPECT_EQ(1, delegate_->num_shutdown_requests());
128 } 137 }
129 138
130 // Test that we start shutting down immediately if the power button is pressed 139 // Test that we start shutting down immediately if the power button is pressed
131 // while we're not logged in on an unofficial system. 140 // while we're not logged in on an unofficial system.
132 TEST_F(PowerButtonControllerTest, LegacyNotLoggedIn) { 141 TEST_F(PowerButtonControllerTest, LegacyNotLoggedIn) {
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after
206 controller_->set_has_legacy_power_button_for_test(false); 215 controller_->set_has_legacy_power_button_for_test(false);
207 controller_->OnLoginStateChanged(user::LOGGED_IN_USER); 216 controller_->OnLoginStateChanged(user::LOGGED_IN_USER);
208 controller_->OnLockStateChanged(false); 217 controller_->OnLockStateChanged(false);
209 EXPECT_FALSE(test_api_->BackgroundLayerIsVisible()); 218 EXPECT_FALSE(test_api_->BackgroundLayerIsVisible());
210 219
211 // We should initially be showing the screen locker containers, since they 220 // We should initially be showing the screen locker containers, since they
212 // also contain login-related windows that we want to show during the 221 // also contain login-related windows that we want to show during the
213 // logging-in animation. 222 // logging-in animation.
214 EXPECT_TRUE( 223 EXPECT_TRUE(
215 test_api_->ContainerGroupIsAnimated( 224 test_api_->ContainerGroupIsAnimated(
216 PowerButtonController::SCREEN_LOCKER_CONTAINERS, 225 PowerButtonController::SCREEN_LOCKER_CONTAINERS_EXCEPT_WALLPAPER,
217 PowerButtonController::ANIMATION_RESTORE)); 226 PowerButtonController::ANIMATION_RESTORE));
218 227
219 // Press the power button and check that the lock timer is started and that we 228 // Press the power button and check that the lock timer is started and that we
220 // start scaling the non-screen-locker containers. 229 // start scaling the non-screen-locker containers.
221 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now()); 230 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now());
222 EXPECT_TRUE(test_api_->lock_timer_is_running()); 231 EXPECT_TRUE(test_api_->lock_timer_is_running());
223 EXPECT_FALSE(test_api_->shutdown_timer_is_running()); 232 EXPECT_FALSE(test_api_->shutdown_timer_is_running());
224 EXPECT_TRUE( 233 EXPECT_TRUE(
225 test_api_->ContainerGroupIsAnimated( 234 test_api_->ContainerGroupIsAnimated(
226 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS, 235 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS,
(...skipping 26 matching lines...) Expand all
253 EXPECT_TRUE(test_api_->BackgroundLayerIsVisible()); 262 EXPECT_TRUE(test_api_->BackgroundLayerIsVisible());
254 263
255 // Notify that we locked successfully. 264 // Notify that we locked successfully.
256 controller_->OnStartingLock(); 265 controller_->OnStartingLock();
257 EXPECT_TRUE( 266 EXPECT_TRUE(
258 test_api_->ContainerGroupIsAnimated( 267 test_api_->ContainerGroupIsAnimated(
259 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS, 268 PowerButtonController::ALL_BUT_SCREEN_LOCKER_AND_RELATED_CONTAINERS,
260 PowerButtonController::ANIMATION_FAST_CLOSE)); 269 PowerButtonController::ANIMATION_FAST_CLOSE));
261 EXPECT_TRUE( 270 EXPECT_TRUE(
262 test_api_->ContainerGroupIsAnimated( 271 test_api_->ContainerGroupIsAnimated(
263 PowerButtonController::SCREEN_LOCKER_CONTAINERS, 272 PowerButtonController::SCREEN_LOCKER_CONTAINERS_EXCEPT_WALLPAPER,
264 PowerButtonController::ANIMATION_HIDE)); 273 PowerButtonController::ANIMATION_HIDE));
265 274
266 // Notify that the lock window is visible. We should make it fade in. 275 // Notify that the lock window is visible. We should make it fade in.
267 controller_->OnLockStateChanged(true); 276 controller_->OnLockStateChanged(true);
268 EXPECT_TRUE( 277 EXPECT_TRUE(
269 test_api_->ContainerGroupIsAnimated( 278 test_api_->ContainerGroupIsAnimated(
270 PowerButtonController::SCREEN_LOCKER_AND_RELATED_CONTAINERS, 279 PowerButtonController::SCREEN_LOCKER_AND_RELATED_CONTAINERS,
271 PowerButtonController::ANIMATION_FADE_IN)); 280 PowerButtonController::ANIMATION_FADE_IN));
272 281
273 // When we release the power button, the lock-to-shutdown timer should be 282 // When we release the power button, the lock-to-shutdown timer should be
(...skipping 284 matching lines...) Expand 10 before | Expand all | Expand 10 after
558 567
559 // After increasing the brightness to 10%, we should start the timer like 568 // After increasing the brightness to 10%, we should start the timer like
560 // usual. 569 // usual.
561 controller_->OnScreenBrightnessChanged(10.0); 570 controller_->OnScreenBrightnessChanged(10.0);
562 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now()); 571 controller_->OnPowerButtonEvent(true, base::TimeTicks::Now());
563 EXPECT_TRUE(test_api_->lock_timer_is_running()); 572 EXPECT_TRUE(test_api_->lock_timer_is_running());
564 } 573 }
565 574
566 } // namespace test 575 } // namespace test
567 } // namespace ash 576 } // namespace ash
OLDNEW
« ash/wm/power_button_controller.h ('K') | « ash/wm/power_button_controller.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698