| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 "ash/wm/lock_state_controller.h" |
| 6 |
| 5 #include "ash/ash_switches.h" | 7 #include "ash/ash_switches.h" |
| 6 #include "ash/session_state_delegate.h" | 8 #include "ash/session_state_delegate.h" |
| 7 #include "ash/shell.h" | 9 #include "ash/shell.h" |
| 8 #include "ash/shell_window_ids.h" | 10 #include "ash/shell_window_ids.h" |
| 9 #include "ash/test/ash_test_base.h" | 11 #include "ash/test/ash_test_base.h" |
| 10 #include "ash/test/test_shell_delegate.h" | 12 #include "ash/test/test_shell_delegate.h" |
| 11 #include "ash/wm/lock_state_controller.h" | |
| 12 #include "ash/wm/lock_state_controller_impl2.h" | |
| 13 #include "ash/wm/power_button_controller.h" | 13 #include "ash/wm/power_button_controller.h" |
| 14 #include "ash/wm/session_state_animator.h" | 14 #include "ash/wm/session_state_animator.h" |
| 15 #include "base/command_line.h" | 15 #include "base/command_line.h" |
| 16 #include "base/memory/scoped_ptr.h" | 16 #include "base/memory/scoped_ptr.h" |
| 17 #include "base/time/time.h" | 17 #include "base/time/time.h" |
| 18 #include "ui/aura/env.h" | 18 #include "ui/aura/env.h" |
| 19 #include "ui/aura/root_window.h" | 19 #include "ui/aura/root_window.h" |
| 20 #include "ui/aura/test/event_generator.h" | 20 #include "ui/aura/test/event_generator.h" |
| 21 #include "ui/compositor/layer_animator.h" | 21 #include "ui/compositor/layer_animator.h" |
| 22 #include "ui/compositor/scoped_animation_duration_scale_mode.h" | 22 #include "ui/compositor/scoped_animation_duration_scale_mode.h" |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 92 num_shutdown_requests_++; | 92 num_shutdown_requests_++; |
| 93 } | 93 } |
| 94 | 94 |
| 95 private: | 95 private: |
| 96 int num_lock_requests_; | 96 int num_lock_requests_; |
| 97 int num_shutdown_requests_; | 97 int num_shutdown_requests_; |
| 98 | 98 |
| 99 DISALLOW_COPY_AND_ASSIGN(TestLockStateControllerDelegate); | 99 DISALLOW_COPY_AND_ASSIGN(TestLockStateControllerDelegate); |
| 100 }; | 100 }; |
| 101 | 101 |
| 102 class LockStateControllerImpl2Test : public AshTestBase { | 102 class LockStateControllerTest : public AshTestBase { |
| 103 public: | 103 public: |
| 104 LockStateControllerImpl2Test() : controller_(NULL), delegate_(NULL) {} | 104 LockStateControllerTest() : controller_(NULL), delegate_(NULL) {} |
| 105 virtual ~LockStateControllerImpl2Test() {} | 105 virtual ~LockStateControllerTest() {} |
| 106 | 106 |
| 107 virtual void SetUp() OVERRIDE { | 107 virtual void SetUp() OVERRIDE { |
| 108 CHECK(!CommandLine::ForCurrentProcess()->HasSwitch( | |
| 109 ash::switches::kAshDisableNewLockAnimations)); | |
| 110 | |
| 111 AshTestBase::SetUp(); | 108 AshTestBase::SetUp(); |
| 112 | 109 |
| 113 // We would control animations in a fine way: | 110 // We would control animations in a fine way: |
| 114 animation_duration_mode_.reset(new ui::ScopedAnimationDurationScaleMode( | 111 animation_duration_mode_.reset(new ui::ScopedAnimationDurationScaleMode( |
| 115 ui::ScopedAnimationDurationScaleMode::NORMAL_DURATION)); | 112 ui::ScopedAnimationDurationScaleMode::NORMAL_DURATION)); |
| 116 // TODO(antrim) : restore | 113 // TODO(antrim) : restore |
| 117 // animator_helper_ = ui::test::CreateLayerAnimatorHelperForTest(); | 114 // animator_helper_ = ui::test::CreateLayerAnimatorHelperForTest(); |
| 118 | 115 |
| 119 // Temporary disable animations so that observer is always called, and | 116 // Temporary disable animations so that observer is always called, and |
| 120 // no leaks happen during tests. | 117 // no leaks happen during tests. |
| 121 animation_duration_mode_.reset(new ui::ScopedAnimationDurationScaleMode( | 118 animation_duration_mode_.reset(new ui::ScopedAnimationDurationScaleMode( |
| 122 ui::ScopedAnimationDurationScaleMode::ZERO_DURATION)); | 119 ui::ScopedAnimationDurationScaleMode::ZERO_DURATION)); |
| 123 // TODO(antrim): once there is a way to mock time and run animations, make | 120 // TODO(antrim): once there is a way to mock time and run animations, make |
| 124 // sure that animations are finished even in simple tests. | 121 // sure that animations are finished even in simple tests. |
| 125 | 122 |
| 126 delegate_ = new TestLockStateControllerDelegate; | 123 delegate_ = new TestLockStateControllerDelegate; |
| 127 controller_ = Shell::GetInstance()->power_button_controller(); | 124 controller_ = Shell::GetInstance()->power_button_controller(); |
| 128 lock_state_controller_ = static_cast<LockStateControllerImpl2*>( | 125 lock_state_controller_ = static_cast<LockStateController*>( |
| 129 Shell::GetInstance()->lock_state_controller()); | 126 Shell::GetInstance()->lock_state_controller()); |
| 130 lock_state_controller_->SetDelegate(delegate_); // transfers ownership | 127 lock_state_controller_->SetDelegate(delegate_); // transfers ownership |
| 131 test_api_.reset( | 128 test_api_.reset(new LockStateController::TestApi(lock_state_controller_)); |
| 132 new LockStateControllerImpl2::TestApi(lock_state_controller_)); | |
| 133 animator_api_.reset( | 129 animator_api_.reset( |
| 134 new SessionStateAnimator::TestApi(lock_state_controller_-> | 130 new SessionStateAnimator::TestApi(lock_state_controller_-> |
| 135 animator_.get())); | 131 animator_.get())); |
| 136 shell_delegate_ = reinterpret_cast<TestShellDelegate*>( | 132 shell_delegate_ = reinterpret_cast<TestShellDelegate*>( |
| 137 ash::Shell::GetInstance()->delegate()); | 133 ash::Shell::GetInstance()->delegate()); |
| 138 session_state_delegate_ = Shell::GetInstance()->session_state_delegate(); | 134 session_state_delegate_ = Shell::GetInstance()->session_state_delegate(); |
| 139 } | 135 } |
| 140 | 136 |
| 141 virtual void TearDown() { | 137 virtual void TearDown() { |
| 142 // TODO(antrim) : restore | 138 // TODO(antrim) : restore |
| (...skipping 245 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 388 void Initialize(bool legacy_button, user::LoginStatus status) { | 384 void Initialize(bool legacy_button, user::LoginStatus status) { |
| 389 controller_->set_has_legacy_power_button_for_test(legacy_button); | 385 controller_->set_has_legacy_power_button_for_test(legacy_button); |
| 390 lock_state_controller_->OnLoginStateChanged(status); | 386 lock_state_controller_->OnLoginStateChanged(status); |
| 391 SetUserLoggedIn(status != user::LOGGED_IN_NONE); | 387 SetUserLoggedIn(status != user::LOGGED_IN_NONE); |
| 392 if (status == user::LOGGED_IN_GUEST) | 388 if (status == user::LOGGED_IN_GUEST) |
| 393 SetCanLockScreen(false); | 389 SetCanLockScreen(false); |
| 394 lock_state_controller_->OnLockStateChanged(false); | 390 lock_state_controller_->OnLockStateChanged(false); |
| 395 } | 391 } |
| 396 | 392 |
| 397 PowerButtonController* controller_; // not owned | 393 PowerButtonController* controller_; // not owned |
| 398 LockStateControllerImpl2* lock_state_controller_; // not owned | 394 LockStateController* lock_state_controller_; // not owned |
| 399 TestLockStateControllerDelegate* delegate_; // not owned | 395 TestLockStateControllerDelegate* delegate_; // not owned |
| 400 TestShellDelegate* shell_delegate_; // not owned | 396 TestShellDelegate* shell_delegate_; // not owned |
| 401 SessionStateDelegate* session_state_delegate_; // not owned | 397 SessionStateDelegate* session_state_delegate_; // not owned |
| 402 | 398 |
| 403 scoped_ptr<ui::ScopedAnimationDurationScaleMode> animation_duration_mode_; | 399 scoped_ptr<ui::ScopedAnimationDurationScaleMode> animation_duration_mode_; |
| 404 scoped_ptr<LockStateControllerImpl2::TestApi> test_api_; | 400 scoped_ptr<LockStateController::TestApi> test_api_; |
| 405 scoped_ptr<SessionStateAnimator::TestApi> animator_api_; | 401 scoped_ptr<SessionStateAnimator::TestApi> animator_api_; |
| 406 // TODO(antrim) : restore | 402 // TODO(antrim) : restore |
| 407 // scoped_ptr<ui::test::AnimationContainerTestHelper> animator_helper_; | 403 // scoped_ptr<ui::test::AnimationContainerTestHelper> animator_helper_; |
| 408 | 404 |
| 409 private: | 405 private: |
| 410 DISALLOW_COPY_AND_ASSIGN(LockStateControllerImpl2Test); | 406 DISALLOW_COPY_AND_ASSIGN(LockStateControllerTest); |
| 411 }; | 407 }; |
| 412 | 408 |
| 413 // Test the lock-to-shutdown flow for non-Chrome-OS hardware that doesn't | 409 // Test the lock-to-shutdown flow for non-Chrome-OS hardware that doesn't |
| 414 // correctly report power button releases. We should lock immediately the first | 410 // correctly report power button releases. We should lock immediately the first |
| 415 // time the button is pressed and shut down when it's pressed from the locked | 411 // time the button is pressed and shut down when it's pressed from the locked |
| 416 // state. | 412 // state. |
| 417 // TODO(antrim): Reenable this: http://crbug.com/167048 | 413 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 418 TEST_F(LockStateControllerImpl2Test, DISABLED_LegacyLockAndShutDown) { | 414 TEST_F(LockStateControllerTest, DISABLED_LegacyLockAndShutDown) { |
| 419 Initialize(true, user::LOGGED_IN_USER); | 415 Initialize(true, user::LOGGED_IN_USER); |
| 420 | 416 |
| 421 ExpectUnlockedState(); | 417 ExpectUnlockedState(); |
| 422 | 418 |
| 423 // We should request that the screen be locked immediately after seeing the | 419 // We should request that the screen be locked immediately after seeing the |
| 424 // power button get pressed. | 420 // power button get pressed. |
| 425 PressPowerButton(); | 421 PressPowerButton(); |
| 426 | 422 |
| 427 ExpectPreLockAnimationStarted(); | 423 ExpectPreLockAnimationStarted(); |
| 428 | 424 |
| (...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 461 GenerateMouseMoveEvent(); | 457 GenerateMouseMoveEvent(); |
| 462 EXPECT_FALSE(cursor_visible()); | 458 EXPECT_FALSE(cursor_visible()); |
| 463 | 459 |
| 464 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 460 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 465 test_api_->trigger_real_shutdown_timeout(); | 461 test_api_->trigger_real_shutdown_timeout(); |
| 466 EXPECT_EQ(1, NumShutdownRequests()); | 462 EXPECT_EQ(1, NumShutdownRequests()); |
| 467 } | 463 } |
| 468 | 464 |
| 469 // Test that we start shutting down immediately if the power button is pressed | 465 // Test that we start shutting down immediately if the power button is pressed |
| 470 // while we're not logged in on an unofficial system. | 466 // while we're not logged in on an unofficial system. |
| 471 TEST_F(LockStateControllerImpl2Test, LegacyNotLoggedIn) { | 467 TEST_F(LockStateControllerTest, LegacyNotLoggedIn) { |
| 472 Initialize(true, user::LOGGED_IN_NONE); | 468 Initialize(true, user::LOGGED_IN_NONE); |
| 473 | 469 |
| 474 PressPowerButton(); | 470 PressPowerButton(); |
| 475 ExpectShutdownAnimationStarted(); | 471 ExpectShutdownAnimationStarted(); |
| 476 | 472 |
| 477 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 473 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 478 } | 474 } |
| 479 | 475 |
| 480 // Test that we start shutting down immediately if the power button is pressed | 476 // Test that we start shutting down immediately if the power button is pressed |
| 481 // while we're logged in as a guest on an unofficial system. | 477 // while we're logged in as a guest on an unofficial system. |
| 482 TEST_F(LockStateControllerImpl2Test, LegacyGuest) { | 478 TEST_F(LockStateControllerTest, LegacyGuest) { |
| 483 Initialize(true, user::LOGGED_IN_GUEST); | 479 Initialize(true, user::LOGGED_IN_GUEST); |
| 484 | 480 |
| 485 PressPowerButton(); | 481 PressPowerButton(); |
| 486 ExpectShutdownAnimationStarted(); | 482 ExpectShutdownAnimationStarted(); |
| 487 | 483 |
| 488 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 484 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 489 } | 485 } |
| 490 | 486 |
| 491 // When we hold the power button while the user isn't logged in, we should shut | 487 // When we hold the power button while the user isn't logged in, we should shut |
| 492 // down the machine directly. | 488 // down the machine directly. |
| 493 TEST_F(LockStateControllerImpl2Test, ShutdownWhenNotLoggedIn) { | 489 TEST_F(LockStateControllerTest, ShutdownWhenNotLoggedIn) { |
| 494 Initialize(false, user::LOGGED_IN_NONE); | 490 Initialize(false, user::LOGGED_IN_NONE); |
| 495 | 491 |
| 496 // Press the power button and check that we start the shutdown timer. | 492 // Press the power button and check that we start the shutdown timer. |
| 497 PressPowerButton(); | 493 PressPowerButton(); |
| 498 EXPECT_FALSE(test_api_->is_animating_lock()); | 494 EXPECT_FALSE(test_api_->is_animating_lock()); |
| 499 EXPECT_TRUE(test_api_->shutdown_timer_is_running()); | 495 EXPECT_TRUE(test_api_->shutdown_timer_is_running()); |
| 500 ExpectShutdownAnimationStarted(); | 496 ExpectShutdownAnimationStarted(); |
| 501 | 497 |
| 502 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN, 0.5f); | 498 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN, 0.5f); |
| 503 | 499 |
| (...skipping 19 matching lines...) Expand all Loading... |
| 523 EXPECT_EQ(0, NumShutdownRequests()); | 519 EXPECT_EQ(0, NumShutdownRequests()); |
| 524 | 520 |
| 525 // When the timout fires, we should request a shutdown. | 521 // When the timout fires, we should request a shutdown. |
| 526 test_api_->trigger_real_shutdown_timeout(); | 522 test_api_->trigger_real_shutdown_timeout(); |
| 527 | 523 |
| 528 EXPECT_EQ(1, NumShutdownRequests()); | 524 EXPECT_EQ(1, NumShutdownRequests()); |
| 529 } | 525 } |
| 530 | 526 |
| 531 // Test that we lock the screen and deal with unlocking correctly. | 527 // Test that we lock the screen and deal with unlocking correctly. |
| 532 // TODO(antrim): Reenable this: http://crbug.com/167048 | 528 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 533 TEST_F(LockStateControllerImpl2Test, DISABLED_LockAndUnlock) { | 529 TEST_F(LockStateControllerTest, DISABLED_LockAndUnlock) { |
| 534 Initialize(false, user::LOGGED_IN_USER); | 530 Initialize(false, user::LOGGED_IN_USER); |
| 535 | 531 |
| 536 ExpectUnlockedState(); | 532 ExpectUnlockedState(); |
| 537 | 533 |
| 538 // Press the power button and check that the lock timer is started and that we | 534 // Press the power button and check that the lock timer is started and that we |
| 539 // start lifting the non-screen-locker containers. | 535 // start lifting the non-screen-locker containers. |
| 540 PressPowerButton(); | 536 PressPowerButton(); |
| 541 | 537 |
| 542 ExpectPreLockAnimationStarted(); | 538 ExpectPreLockAnimationStarted(); |
| 543 EXPECT_TRUE(test_api_->is_lock_cancellable()); | 539 EXPECT_TRUE(test_api_->is_lock_cancellable()); |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 583 | 579 |
| 584 ExpectUnlockAfterUIDestroyedAnimationStarted(); | 580 ExpectUnlockAfterUIDestroyedAnimationStarted(); |
| 585 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 581 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 586 ExpectUnlockAfterUIDestroyedAnimationFinished(); | 582 ExpectUnlockAfterUIDestroyedAnimationFinished(); |
| 587 | 583 |
| 588 ExpectUnlockedState(); | 584 ExpectUnlockedState(); |
| 589 } | 585 } |
| 590 | 586 |
| 591 // Test that we deal with cancelling lock correctly. | 587 // Test that we deal with cancelling lock correctly. |
| 592 // TODO(antrim): Reenable this: http://crbug.com/167048 | 588 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 593 TEST_F(LockStateControllerImpl2Test, DISABLED_LockAndCancel) { | 589 TEST_F(LockStateControllerTest, DISABLED_LockAndCancel) { |
| 594 Initialize(false, user::LOGGED_IN_USER); | 590 Initialize(false, user::LOGGED_IN_USER); |
| 595 | 591 |
| 596 ExpectUnlockedState(); | 592 ExpectUnlockedState(); |
| 597 | 593 |
| 598 // Press the power button and check that the lock timer is started and that we | 594 // Press the power button and check that the lock timer is started and that we |
| 599 // start lifting the non-screen-locker containers. | 595 // start lifting the non-screen-locker containers. |
| 600 PressPowerButton(); | 596 PressPowerButton(); |
| 601 | 597 |
| 602 ExpectPreLockAnimationStarted(); | 598 ExpectPreLockAnimationStarted(); |
| 603 EXPECT_TRUE(test_api_->is_lock_cancellable()); | 599 EXPECT_TRUE(test_api_->is_lock_cancellable()); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 620 // Expect no flickering, animation should proceed from mid-state. | 616 // Expect no flickering, animation should proceed from mid-state. |
| 621 EXPECT_EQ(transform_before_button_released, transform_after_button_released); | 617 EXPECT_EQ(transform_before_button_released, transform_after_button_released); |
| 622 | 618 |
| 623 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 619 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 624 ExpectUnlockedState(); | 620 ExpectUnlockedState(); |
| 625 EXPECT_EQ(0, delegate_->num_lock_requests()); | 621 EXPECT_EQ(0, delegate_->num_lock_requests()); |
| 626 } | 622 } |
| 627 | 623 |
| 628 // Test that we deal with cancelling lock correctly. | 624 // Test that we deal with cancelling lock correctly. |
| 629 // TODO(antrim): Reenable this: http://crbug.com/167048 | 625 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 630 TEST_F(LockStateControllerImpl2Test, | 626 TEST_F(LockStateControllerTest, |
| 631 DISABLED_LockAndCancelAndLockAgain) { | 627 DISABLED_LockAndCancelAndLockAgain) { |
| 632 Initialize(false, user::LOGGED_IN_USER); | 628 Initialize(false, user::LOGGED_IN_USER); |
| 633 | 629 |
| 634 ExpectUnlockedState(); | 630 ExpectUnlockedState(); |
| 635 | 631 |
| 636 // Press the power button and check that the lock timer is started and that we | 632 // Press the power button and check that the lock timer is started and that we |
| 637 // start lifting the non-screen-locker containers. | 633 // start lifting the non-screen-locker containers. |
| 638 PressPowerButton(); | 634 PressPowerButton(); |
| 639 | 635 |
| 640 ExpectPreLockAnimationStarted(); | 636 ExpectPreLockAnimationStarted(); |
| (...skipping 17 matching lines...) Expand all Loading... |
| 658 EXPECT_EQ(0, delegate_->num_lock_requests()); | 654 EXPECT_EQ(0, delegate_->num_lock_requests()); |
| 659 ExpectPreLockAnimationStarted(); | 655 ExpectPreLockAnimationStarted(); |
| 660 | 656 |
| 661 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.6f); | 657 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.6f); |
| 662 ExpectPreLockAnimationFinished(); | 658 ExpectPreLockAnimationFinished(); |
| 663 EXPECT_EQ(1, delegate_->num_lock_requests()); | 659 EXPECT_EQ(1, delegate_->num_lock_requests()); |
| 664 } | 660 } |
| 665 | 661 |
| 666 // Hold the power button down from the unlocked state to eventual shutdown. | 662 // Hold the power button down from the unlocked state to eventual shutdown. |
| 667 // TODO(antrim): Reenable this: http://crbug.com/167048 | 663 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 668 TEST_F(LockStateControllerImpl2Test, DISABLED_LockToShutdown) { | 664 TEST_F(LockStateControllerTest, DISABLED_LockToShutdown) { |
| 669 Initialize(false, user::LOGGED_IN_USER); | 665 Initialize(false, user::LOGGED_IN_USER); |
| 670 | 666 |
| 671 // Hold the power button and lock the screen. | 667 // Hold the power button and lock the screen. |
| 672 PressPowerButton(); | 668 PressPowerButton(); |
| 673 EXPECT_TRUE(test_api_->is_animating_lock()); | 669 EXPECT_TRUE(test_api_->is_animating_lock()); |
| 674 | 670 |
| 675 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); | 671 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); |
| 676 SystemLocks(); | 672 SystemLocks(); |
| 677 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 673 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 678 | 674 |
| (...skipping 12 matching lines...) Expand all Loading... |
| 691 test_api_->trigger_shutdown_timeout(); | 687 test_api_->trigger_shutdown_timeout(); |
| 692 | 688 |
| 693 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 689 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 694 EXPECT_EQ(0, NumShutdownRequests()); | 690 EXPECT_EQ(0, NumShutdownRequests()); |
| 695 test_api_->trigger_real_shutdown_timeout(); | 691 test_api_->trigger_real_shutdown_timeout(); |
| 696 EXPECT_EQ(1, NumShutdownRequests()); | 692 EXPECT_EQ(1, NumShutdownRequests()); |
| 697 } | 693 } |
| 698 | 694 |
| 699 // Hold the power button down from the unlocked state to eventual shutdown, | 695 // Hold the power button down from the unlocked state to eventual shutdown, |
| 700 // then release the button while system does locking. | 696 // then release the button while system does locking. |
| 701 TEST_F(LockStateControllerImpl2Test, CancelLockToShutdown) { | 697 TEST_F(LockStateControllerTest, CancelLockToShutdown) { |
| 702 Initialize(false, user::LOGGED_IN_USER); | 698 Initialize(false, user::LOGGED_IN_USER); |
| 703 | 699 |
| 704 PressPowerButton(); | 700 PressPowerButton(); |
| 705 | 701 |
| 706 // Hold the power button and lock the screen. | 702 // Hold the power button and lock the screen. |
| 707 EXPECT_TRUE(test_api_->is_animating_lock()); | 703 EXPECT_TRUE(test_api_->is_animating_lock()); |
| 708 | 704 |
| 709 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); | 705 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); |
| 710 SystemLocks(); | 706 SystemLocks(); |
| 711 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS, 0.5f); | 707 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS, 0.5f); |
| 712 | 708 |
| 713 // Power button is released while system attempts to lock. | 709 // Power button is released while system attempts to lock. |
| 714 ReleasePowerButton(); | 710 ReleasePowerButton(); |
| 715 | 711 |
| 716 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 712 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 717 | 713 |
| 718 EXPECT_FALSE(lock_state_controller_->ShutdownRequested()); | 714 EXPECT_FALSE(lock_state_controller_->ShutdownRequested()); |
| 719 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running()); | 715 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running()); |
| 720 EXPECT_FALSE(test_api_->shutdown_timer_is_running()); | 716 EXPECT_FALSE(test_api_->shutdown_timer_is_running()); |
| 721 } | 717 } |
| 722 | 718 |
| 723 // Test that we handle the case where lock requests are ignored. | 719 // Test that we handle the case where lock requests are ignored. |
| 724 // TODO(antrim): Reenable this: http://crbug.com/167048 | 720 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 725 TEST_F(LockStateControllerImpl2Test, DISABLED_Lock) { | 721 TEST_F(LockStateControllerTest, DISABLED_Lock) { |
| 726 // We require animations to have a duration for this test. | 722 // We require animations to have a duration for this test. |
| 727 ui::ScopedAnimationDurationScaleMode normal_duration_mode( | 723 ui::ScopedAnimationDurationScaleMode normal_duration_mode( |
| 728 ui::ScopedAnimationDurationScaleMode::NORMAL_DURATION); | 724 ui::ScopedAnimationDurationScaleMode::NORMAL_DURATION); |
| 729 | 725 |
| 730 Initialize(false, user::LOGGED_IN_USER); | 726 Initialize(false, user::LOGGED_IN_USER); |
| 731 | 727 |
| 732 // Hold the power button and lock the screen. | 728 // Hold the power button and lock the screen. |
| 733 PressPowerButton(); | 729 PressPowerButton(); |
| 734 ExpectPreLockAnimationStarted(); | 730 ExpectPreLockAnimationStarted(); |
| 735 | 731 |
| 736 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); | 732 Advance(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE); |
| 737 | 733 |
| 738 EXPECT_EQ(1, delegate_->num_lock_requests()); | 734 EXPECT_EQ(1, delegate_->num_lock_requests()); |
| 739 EXPECT_TRUE(test_api_->lock_fail_timer_is_running()); | 735 EXPECT_TRUE(test_api_->lock_fail_timer_is_running()); |
| 740 // We shouldn't start the lock-to-shutdown timer until the screen has actually | 736 // We shouldn't start the lock-to-shutdown timer until the screen has actually |
| 741 // been locked and this was animated. | 737 // been locked and this was animated. |
| 742 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running()); | 738 EXPECT_FALSE(test_api_->lock_to_shutdown_timer_is_running()); |
| 743 | 739 |
| 744 // Act as if the request timed out. We should restore the windows. | 740 // Act as if the request timed out. We should restore the windows. |
| 745 test_api_->trigger_lock_fail_timeout(); | 741 test_api_->trigger_lock_fail_timeout(); |
| 746 | 742 |
| 747 ExpectUnlockAfterUIDestroyedAnimationStarted(); | 743 ExpectUnlockAfterUIDestroyedAnimationStarted(); |
| 748 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 744 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 749 ExpectUnlockAfterUIDestroyedAnimationFinished(); | 745 ExpectUnlockAfterUIDestroyedAnimationFinished(); |
| 750 ExpectUnlockedState(); | 746 ExpectUnlockedState(); |
| 751 } | 747 } |
| 752 | 748 |
| 753 // Test the basic operation of the lock button (not logged in). | 749 // Test the basic operation of the lock button (not logged in). |
| 754 TEST_F(LockStateControllerImpl2Test, LockButtonBasicNotLoggedIn) { | 750 TEST_F(LockStateControllerTest, LockButtonBasicNotLoggedIn) { |
| 755 // The lock button shouldn't do anything if we aren't logged in. | 751 // The lock button shouldn't do anything if we aren't logged in. |
| 756 Initialize(false, user::LOGGED_IN_NONE); | 752 Initialize(false, user::LOGGED_IN_NONE); |
| 757 | 753 |
| 758 PressLockButton(); | 754 PressLockButton(); |
| 759 EXPECT_FALSE(test_api_->is_animating_lock()); | 755 EXPECT_FALSE(test_api_->is_animating_lock()); |
| 760 ReleaseLockButton(); | 756 ReleaseLockButton(); |
| 761 EXPECT_EQ(0, delegate_->num_lock_requests()); | 757 EXPECT_EQ(0, delegate_->num_lock_requests()); |
| 762 } | 758 } |
| 763 | 759 |
| 764 // Test the basic operation of the lock button (guest). | 760 // Test the basic operation of the lock button (guest). |
| 765 TEST_F(LockStateControllerImpl2Test, LockButtonBasicGuest) { | 761 TEST_F(LockStateControllerTest, LockButtonBasicGuest) { |
| 766 // The lock button shouldn't do anything when we're logged in as a guest. | 762 // The lock button shouldn't do anything when we're logged in as a guest. |
| 767 Initialize(false, user::LOGGED_IN_GUEST); | 763 Initialize(false, user::LOGGED_IN_GUEST); |
| 768 | 764 |
| 769 PressLockButton(); | 765 PressLockButton(); |
| 770 EXPECT_FALSE(test_api_->is_animating_lock()); | 766 EXPECT_FALSE(test_api_->is_animating_lock()); |
| 771 ReleaseLockButton(); | 767 ReleaseLockButton(); |
| 772 EXPECT_EQ(0, delegate_->num_lock_requests()); | 768 EXPECT_EQ(0, delegate_->num_lock_requests()); |
| 773 } | 769 } |
| 774 | 770 |
| 775 // Test the basic operation of the lock button. | 771 // Test the basic operation of the lock button. |
| 776 // TODO(antrim): Reenable this: http://crbug.com/167048 | 772 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 777 TEST_F(LockStateControllerImpl2Test, DISABLED_LockButtonBasic) { | 773 TEST_F(LockStateControllerTest, DISABLED_LockButtonBasic) { |
| 778 // If we're logged in as a regular user, we should start the lock timer and | 774 // If we're logged in as a regular user, we should start the lock timer and |
| 779 // the pre-lock animation. | 775 // the pre-lock animation. |
| 780 Initialize(false, user::LOGGED_IN_USER); | 776 Initialize(false, user::LOGGED_IN_USER); |
| 781 | 777 |
| 782 PressLockButton(); | 778 PressLockButton(); |
| 783 ExpectPreLockAnimationStarted(); | 779 ExpectPreLockAnimationStarted(); |
| 784 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); | 780 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); |
| 785 | 781 |
| 786 // If the button is released immediately, we shouldn't lock the screen. | 782 // If the button is released immediately, we shouldn't lock the screen. |
| 787 ReleaseLockButton(); | 783 ReleaseLockButton(); |
| (...skipping 28 matching lines...) Expand all Loading... |
| 816 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 812 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 817 ExpectPastLockAnimationFinished(); | 813 ExpectPastLockAnimationFinished(); |
| 818 | 814 |
| 819 PressLockButton(); | 815 PressLockButton(); |
| 820 ReleaseLockButton(); | 816 ReleaseLockButton(); |
| 821 ExpectPastLockAnimationFinished(); | 817 ExpectPastLockAnimationFinished(); |
| 822 } | 818 } |
| 823 | 819 |
| 824 // Test that the power button takes priority over the lock button. | 820 // Test that the power button takes priority over the lock button. |
| 825 // TODO(antrim): Reenable this: http://crbug.com/167048 | 821 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 826 TEST_F(LockStateControllerImpl2Test, | 822 TEST_F(LockStateControllerTest, |
| 827 DISABLED_PowerButtonPreemptsLockButton) { | 823 DISABLED_PowerButtonPreemptsLockButton) { |
| 828 Initialize(false, user::LOGGED_IN_USER); | 824 Initialize(false, user::LOGGED_IN_USER); |
| 829 | 825 |
| 830 // While the lock button is down, hold the power button. | 826 // While the lock button is down, hold the power button. |
| 831 PressLockButton(); | 827 PressLockButton(); |
| 832 ExpectPreLockAnimationStarted(); | 828 ExpectPreLockAnimationStarted(); |
| 833 PressPowerButton(); | 829 PressPowerButton(); |
| 834 ExpectPreLockAnimationStarted(); | 830 ExpectPreLockAnimationStarted(); |
| 835 | 831 |
| 836 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); | 832 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); |
| (...skipping 18 matching lines...) Expand all Loading... |
| 855 // Releasing the power button should stop the lock timer. | 851 // Releasing the power button should stop the lock timer. |
| 856 ReleasePowerButton(); | 852 ReleasePowerButton(); |
| 857 ExpectPreLockAnimationCancel(); | 853 ExpectPreLockAnimationCancel(); |
| 858 ReleaseLockButton(); | 854 ReleaseLockButton(); |
| 859 ExpectPreLockAnimationCancel(); | 855 ExpectPreLockAnimationCancel(); |
| 860 } | 856 } |
| 861 | 857 |
| 862 // When the screen is locked without going through the usual power-button | 858 // When the screen is locked without going through the usual power-button |
| 863 // slow-close path (e.g. via the wrench menu), test that we still show the | 859 // slow-close path (e.g. via the wrench menu), test that we still show the |
| 864 // fast-close animation. | 860 // fast-close animation. |
| 865 TEST_F(LockStateControllerImpl2Test, LockWithoutButton) { | 861 TEST_F(LockStateControllerTest, LockWithoutButton) { |
| 866 Initialize(false, user::LOGGED_IN_USER); | 862 Initialize(false, user::LOGGED_IN_USER); |
| 867 lock_state_controller_->OnStartingLock(); | 863 lock_state_controller_->OnStartingLock(); |
| 868 | 864 |
| 869 ExpectPreLockAnimationStarted(); | 865 ExpectPreLockAnimationStarted(); |
| 870 EXPECT_FALSE(test_api_->is_lock_cancellable()); | 866 EXPECT_FALSE(test_api_->is_lock_cancellable()); |
| 871 | 867 |
| 872 // TODO(antrim): After time-faking is fixed, let the pre-lock animation | 868 // TODO(antrim): After time-faking is fixed, let the pre-lock animation |
| 873 // complete here and check that delegate_->num_lock_requests() is 0 to | 869 // complete here and check that delegate_->num_lock_requests() is 0 to |
| 874 // prevent http://crbug.com/172487 from regressing. | 870 // prevent http://crbug.com/172487 from regressing. |
| 875 } | 871 } |
| 876 | 872 |
| 877 // When we hear that the process is exiting but we haven't had a chance to | 873 // When we hear that the process is exiting but we haven't had a chance to |
| 878 // display an animation, we should just blank the screen. | 874 // display an animation, we should just blank the screen. |
| 879 TEST_F(LockStateControllerImpl2Test, ShutdownWithoutButton) { | 875 TEST_F(LockStateControllerTest, ShutdownWithoutButton) { |
| 880 Initialize(false, user::LOGGED_IN_USER); | 876 Initialize(false, user::LOGGED_IN_USER); |
| 881 lock_state_controller_->OnAppTerminating(); | 877 lock_state_controller_->OnAppTerminating(); |
| 882 | 878 |
| 883 EXPECT_TRUE( | 879 EXPECT_TRUE( |
| 884 animator_api_->ContainersAreAnimated( | 880 animator_api_->ContainersAreAnimated( |
| 885 SessionStateAnimator::kAllContainersMask, | 881 SessionStateAnimator::kAllContainersMask, |
| 886 SessionStateAnimator::ANIMATION_HIDE_IMMEDIATELY)); | 882 SessionStateAnimator::ANIMATION_HIDE_IMMEDIATELY)); |
| 887 GenerateMouseMoveEvent(); | 883 GenerateMouseMoveEvent(); |
| 888 EXPECT_FALSE(cursor_visible()); | 884 EXPECT_FALSE(cursor_visible()); |
| 889 } | 885 } |
| 890 | 886 |
| 891 // Test that we display the fast-close animation and shut down when we get an | 887 // Test that we display the fast-close animation and shut down when we get an |
| 892 // outside request to shut down (e.g. from the login or lock screen). | 888 // outside request to shut down (e.g. from the login or lock screen). |
| 893 TEST_F(LockStateControllerImpl2Test, RequestShutdownFromLoginScreen) { | 889 TEST_F(LockStateControllerTest, RequestShutdownFromLoginScreen) { |
| 894 Initialize(false, user::LOGGED_IN_NONE); | 890 Initialize(false, user::LOGGED_IN_NONE); |
| 895 | 891 |
| 896 lock_state_controller_->RequestShutdown(); | 892 lock_state_controller_->RequestShutdown(); |
| 897 | 893 |
| 898 ExpectShutdownAnimationStarted(); | 894 ExpectShutdownAnimationStarted(); |
| 899 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); | 895 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); |
| 900 | 896 |
| 901 GenerateMouseMoveEvent(); | 897 GenerateMouseMoveEvent(); |
| 902 EXPECT_FALSE(cursor_visible()); | 898 EXPECT_FALSE(cursor_visible()); |
| 903 | 899 |
| 904 EXPECT_EQ(0, NumShutdownRequests()); | 900 EXPECT_EQ(0, NumShutdownRequests()); |
| 905 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 901 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 906 test_api_->trigger_real_shutdown_timeout(); | 902 test_api_->trigger_real_shutdown_timeout(); |
| 907 EXPECT_EQ(1, NumShutdownRequests()); | 903 EXPECT_EQ(1, NumShutdownRequests()); |
| 908 } | 904 } |
| 909 | 905 |
| 910 TEST_F(LockStateControllerImpl2Test, RequestShutdownFromLockScreen) { | 906 TEST_F(LockStateControllerTest, RequestShutdownFromLockScreen) { |
| 911 Initialize(false, user::LOGGED_IN_USER); | 907 Initialize(false, user::LOGGED_IN_USER); |
| 912 | 908 |
| 913 SystemLocks(); | 909 SystemLocks(); |
| 914 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); | 910 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); |
| 915 ExpectPastLockAnimationFinished(); | 911 ExpectPastLockAnimationFinished(); |
| 916 | 912 |
| 917 lock_state_controller_->RequestShutdown(); | 913 lock_state_controller_->RequestShutdown(); |
| 918 | 914 |
| 919 ExpectShutdownAnimationStarted(); | 915 ExpectShutdownAnimationStarted(); |
| 920 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); | 916 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); |
| 921 | 917 |
| 922 GenerateMouseMoveEvent(); | 918 GenerateMouseMoveEvent(); |
| 923 EXPECT_FALSE(cursor_visible()); | 919 EXPECT_FALSE(cursor_visible()); |
| 924 | 920 |
| 925 EXPECT_EQ(0, NumShutdownRequests()); | 921 EXPECT_EQ(0, NumShutdownRequests()); |
| 926 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); | 922 EXPECT_TRUE(test_api_->real_shutdown_timer_is_running()); |
| 927 test_api_->trigger_real_shutdown_timeout(); | 923 test_api_->trigger_real_shutdown_timeout(); |
| 928 EXPECT_EQ(1, NumShutdownRequests()); | 924 EXPECT_EQ(1, NumShutdownRequests()); |
| 929 } | 925 } |
| 930 | 926 |
| 931 // TODO(antrim): Reenable this: http://crbug.com/167048 | 927 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 932 TEST_F(LockStateControllerImpl2Test, | 928 TEST_F(LockStateControllerTest, |
| 933 DISABLED_RequestAndCancelShutdownFromLockScreen) { | 929 DISABLED_RequestAndCancelShutdownFromLockScreen) { |
| 934 Initialize(false, user::LOGGED_IN_USER); | 930 Initialize(false, user::LOGGED_IN_USER); |
| 935 | 931 |
| 936 SystemLocks(); | 932 SystemLocks(); |
| 937 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); | 933 Advance(SessionStateAnimator::ANIMATION_SPEED_SHUTDOWN); |
| 938 ExpectLockedState(); | 934 ExpectLockedState(); |
| 939 | 935 |
| 940 // Press the power button and check that we start the shutdown timer. | 936 // Press the power button and check that we start the shutdown timer. |
| 941 PressPowerButton(); | 937 PressPowerButton(); |
| 942 EXPECT_FALSE(test_api_->is_animating_lock()); | 938 EXPECT_FALSE(test_api_->is_animating_lock()); |
| (...skipping 16 matching lines...) Expand all Loading... |
| 959 float grayscale_after_button_release = | 955 float grayscale_after_button_release = |
| 960 Shell::GetPrimaryRootWindow()->layer()->layer_grayscale(); | 956 Shell::GetPrimaryRootWindow()->layer()->layer_grayscale(); |
| 961 // Expect no flickering in undo animation. | 957 // Expect no flickering in undo animation. |
| 962 EXPECT_EQ(grayscale_before_button_release, grayscale_after_button_release); | 958 EXPECT_EQ(grayscale_before_button_release, grayscale_after_button_release); |
| 963 | 959 |
| 964 Advance(SessionStateAnimator::ANIMATION_SPEED_REVERT); | 960 Advance(SessionStateAnimator::ANIMATION_SPEED_REVERT); |
| 965 ExpectLockedState(); | 961 ExpectLockedState(); |
| 966 } | 962 } |
| 967 | 963 |
| 968 // Test that we ignore power button presses when the screen is turned off. | 964 // Test that we ignore power button presses when the screen is turned off. |
| 969 TEST_F(LockStateControllerImpl2Test, IgnorePowerButtonIfScreenIsOff) { | 965 TEST_F(LockStateControllerTest, IgnorePowerButtonIfScreenIsOff) { |
| 970 Initialize(false, user::LOGGED_IN_USER); | 966 Initialize(false, user::LOGGED_IN_USER); |
| 971 | 967 |
| 972 // When the screen brightness is at 0%, we shouldn't do anything in response | 968 // When the screen brightness is at 0%, we shouldn't do anything in response |
| 973 // to power button presses. | 969 // to power button presses. |
| 974 controller_->OnScreenBrightnessChanged(0.0); | 970 controller_->OnScreenBrightnessChanged(0.0); |
| 975 | 971 |
| 976 PressPowerButton(); | 972 PressPowerButton(); |
| 977 EXPECT_FALSE(test_api_->is_animating_lock()); | 973 EXPECT_FALSE(test_api_->is_animating_lock()); |
| 978 ReleasePowerButton(); | 974 ReleasePowerButton(); |
| 979 | 975 |
| 980 // After increasing the brightness to 10%, we should start the timer like | 976 // After increasing the brightness to 10%, we should start the timer like |
| 981 // usual. | 977 // usual. |
| 982 controller_->OnScreenBrightnessChanged(10.0); | 978 controller_->OnScreenBrightnessChanged(10.0); |
| 983 | 979 |
| 984 PressPowerButton(); | 980 PressPowerButton(); |
| 985 EXPECT_TRUE(test_api_->is_animating_lock()); | 981 EXPECT_TRUE(test_api_->is_animating_lock()); |
| 986 } | 982 } |
| 987 | 983 |
| 988 // Test that hidden background appears and revers correctly on lock/cancel. | 984 // Test that hidden background appears and revers correctly on lock/cancel. |
| 989 // TODO(antrim): Reenable this: http://crbug.com/167048 | 985 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 990 TEST_F(LockStateControllerImpl2Test, | 986 TEST_F(LockStateControllerTest, DISABLED_TestHiddenBackgroundLockCancel) { |
| 991 DISABLED_TestHiddenBackgroundLockCancel) { | |
| 992 Initialize(false, user::LOGGED_IN_USER); | 987 Initialize(false, user::LOGGED_IN_USER); |
| 993 HideBackground(); | 988 HideBackground(); |
| 994 | 989 |
| 995 EXPECT_TRUE(IsBackgroundHidden()); | 990 EXPECT_TRUE(IsBackgroundHidden()); |
| 996 ExpectUnlockedState(); | 991 ExpectUnlockedState(); |
| 997 PressPowerButton(); | 992 PressPowerButton(); |
| 998 | 993 |
| 999 ExpectPreLockAnimationStarted(); | 994 ExpectPreLockAnimationStarted(); |
| 1000 EXPECT_FALSE(IsBackgroundHidden()); | 995 EXPECT_FALSE(IsBackgroundHidden()); |
| 1001 ExpectBackgroundIsShowing(); | 996 ExpectBackgroundIsShowing(); |
| 1002 | 997 |
| 1003 // Forward only half way through. | 998 // Forward only half way through. |
| 1004 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); | 999 AdvancePartially(SessionStateAnimator::ANIMATION_SPEED_UNDOABLE, 0.5f); |
| 1005 | 1000 |
| 1006 // Release the button before the lock timer fires. | 1001 // Release the button before the lock timer fires. |
| 1007 ReleasePowerButton(); | 1002 ReleasePowerButton(); |
| 1008 ExpectPreLockAnimationCancel(); | 1003 ExpectPreLockAnimationCancel(); |
| 1009 ExpectBackgroundIsHiding(); | 1004 ExpectBackgroundIsHiding(); |
| 1010 EXPECT_FALSE(IsBackgroundHidden()); | 1005 EXPECT_FALSE(IsBackgroundHidden()); |
| 1011 | 1006 |
| 1012 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 1007 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 1013 | 1008 |
| 1014 ExpectUnlockedState(); | 1009 ExpectUnlockedState(); |
| 1015 EXPECT_TRUE(IsBackgroundHidden()); | 1010 EXPECT_TRUE(IsBackgroundHidden()); |
| 1016 } | 1011 } |
| 1017 | 1012 |
| 1018 // Test that hidden background appears and revers correctly on lock/unlock. | 1013 // Test that hidden background appears and revers correctly on lock/unlock. |
| 1019 // TODO(antrim): Reenable this: http://crbug.com/167048 | 1014 // TODO(antrim): Reenable this: http://crbug.com/167048 |
| 1020 TEST_F(LockStateControllerImpl2Test, | 1015 TEST_F(LockStateControllerTest, DISABLED_TestHiddenBackgroundLockUnlock) { |
| 1021 DISABLED_TestHiddenBackgroundLockUnlock) { | |
| 1022 Initialize(false, user::LOGGED_IN_USER); | 1016 Initialize(false, user::LOGGED_IN_USER); |
| 1023 HideBackground(); | 1017 HideBackground(); |
| 1024 | 1018 |
| 1025 EXPECT_TRUE(IsBackgroundHidden()); | 1019 EXPECT_TRUE(IsBackgroundHidden()); |
| 1026 ExpectUnlockedState(); | 1020 ExpectUnlockedState(); |
| 1027 | 1021 |
| 1028 // Press the power button and check that the lock timer is started and that we | 1022 // Press the power button and check that the lock timer is started and that we |
| 1029 // start lifting the non-screen-locker containers. | 1023 // start lifting the non-screen-locker containers. |
| 1030 PressPowerButton(); | 1024 PressPowerButton(); |
| 1031 | 1025 |
| (...skipping 29 matching lines...) Expand all Loading... |
| 1061 | 1055 |
| 1062 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); | 1056 Advance(SessionStateAnimator::ANIMATION_SPEED_MOVE_WINDOWS); |
| 1063 ExpectUnlockAfterUIDestroyedAnimationFinished(); | 1057 ExpectUnlockAfterUIDestroyedAnimationFinished(); |
| 1064 EXPECT_TRUE(IsBackgroundHidden()); | 1058 EXPECT_TRUE(IsBackgroundHidden()); |
| 1065 | 1059 |
| 1066 ExpectUnlockedState(); | 1060 ExpectUnlockedState(); |
| 1067 } | 1061 } |
| 1068 | 1062 |
| 1069 } // namespace test | 1063 } // namespace test |
| 1070 } // namespace ash | 1064 } // namespace ash |
| OLD | NEW |