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

Side by Side Diff: chrome/browser/chromeos/login/auth/cryptohome_authenticator_unittest.cc

Issue 2315443004: Remove calls to deprecated MessageLoop methods in chrome. (Closed)
Patch Set: remove unused include Created 4 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 5
6 #include <stdint.h> 6 #include <stdint.h>
7 7
8 #include <memory> 8 #include <memory>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 520 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 TEST_F(CryptohomeAuthenticatorTest, DriveGuestLogin) { 531 TEST_F(CryptohomeAuthenticatorTest, DriveGuestLogin) {
532 ExpectGuestLoginSuccess(); 532 ExpectGuestLoginSuccess();
533 FailOnLoginFailure(); 533 FailOnLoginFailure();
534 534
535 // Set up mock async method caller to respond as though a tmpfs mount 535 // Set up mock async method caller to respond as though a tmpfs mount
536 // attempt has occurred and succeeded. 536 // attempt has occurred and succeeded.
537 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE); 537 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE);
538 EXPECT_CALL(*mock_caller_, AsyncMountGuest(_)).Times(1).RetiresOnSaturation(); 538 EXPECT_CALL(*mock_caller_, AsyncMountGuest(_)).Times(1).RetiresOnSaturation();
539 539
540 auth_->LoginOffTheRecord(); 540 auth_->LoginOffTheRecord();
541 base::MessageLoop::current()->Run(); 541 base::RunLoop().Run();
542 } 542 }
543 543
544 TEST_F(CryptohomeAuthenticatorTest, DriveGuestLoginButFail) { 544 TEST_F(CryptohomeAuthenticatorTest, DriveGuestLoginButFail) {
545 FailOnGuestLoginSuccess(); 545 FailOnGuestLoginSuccess();
546 ExpectLoginFailure(AuthFailure(AuthFailure::COULD_NOT_MOUNT_TMPFS)); 546 ExpectLoginFailure(AuthFailure(AuthFailure::COULD_NOT_MOUNT_TMPFS));
547 547
548 // Set up mock async method caller to respond as though a tmpfs mount 548 // Set up mock async method caller to respond as though a tmpfs mount
549 // attempt has occurred and failed. 549 // attempt has occurred and failed.
550 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_NONE); 550 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_NONE);
551 EXPECT_CALL(*mock_caller_, AsyncMountGuest(_)).Times(1).RetiresOnSaturation(); 551 EXPECT_CALL(*mock_caller_, AsyncMountGuest(_)).Times(1).RetiresOnSaturation();
552 552
553 auth_->LoginOffTheRecord(); 553 auth_->LoginOffTheRecord();
554 base::MessageLoop::current()->Run(); 554 base::RunLoop().Run();
555 } 555 }
556 556
557 TEST_F(CryptohomeAuthenticatorTest, DriveDataResync) { 557 TEST_F(CryptohomeAuthenticatorTest, DriveDataResync) {
558 UserContext expected_user_context(user_context_with_transformed_key_); 558 UserContext expected_user_context(user_context_with_transformed_key_);
559 expected_user_context.SetUserIDHash( 559 expected_user_context.SetUserIDHash(
560 cryptohome::MockAsyncMethodCaller::kFakeSanitizedUsername); 560 cryptohome::MockAsyncMethodCaller::kFakeSanitizedUsername);
561 ExpectLoginSuccess(expected_user_context); 561 ExpectLoginSuccess(expected_user_context);
562 FailOnLoginFailure(); 562 FailOnLoginFailure();
563 563
564 // Set up mock async method caller to respond successfully to a cryptohome 564 // Set up mock async method caller to respond successfully to a cryptohome
565 // remove attempt. 565 // remove attempt.
566 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE); 566 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE);
567 EXPECT_CALL( 567 EXPECT_CALL(
568 *mock_caller_, 568 *mock_caller_,
569 AsyncRemove(cryptohome::Identification(user_context_.GetAccountId()), _)) 569 AsyncRemove(cryptohome::Identification(user_context_.GetAccountId()), _))
570 .Times(1) 570 .Times(1)
571 .RetiresOnSaturation(); 571 .RetiresOnSaturation();
572 572
573 // Set up mock homedir methods to respond successfully to a cryptohome create 573 // Set up mock homedir methods to respond successfully to a cryptohome create
574 // attempt. 574 // attempt.
575 ExpectGetKeyDataExCall(std::unique_ptr<int64_t>(), 575 ExpectGetKeyDataExCall(std::unique_ptr<int64_t>(),
576 std::unique_ptr<std::string>()); 576 std::unique_ptr<std::string>());
577 ExpectMountExCall(true /* expect_create_attempt */); 577 ExpectMountExCall(true /* expect_create_attempt */);
578 578
579 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone()); 579 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone());
580 SetAttemptState(auth_.get(), state_.release()); 580 SetAttemptState(auth_.get(), state_.release());
581 581
582 auth_->ResyncEncryptedData(); 582 auth_->ResyncEncryptedData();
583 base::MessageLoop::current()->Run(); 583 base::RunLoop().Run();
584 } 584 }
585 585
586 TEST_F(CryptohomeAuthenticatorTest, DriveResyncFail) { 586 TEST_F(CryptohomeAuthenticatorTest, DriveResyncFail) {
587 FailOnLoginSuccess(); 587 FailOnLoginSuccess();
588 ExpectLoginFailure(AuthFailure(AuthFailure::DATA_REMOVAL_FAILED)); 588 ExpectLoginFailure(AuthFailure(AuthFailure::DATA_REMOVAL_FAILED));
589 589
590 // Set up mock async method caller to fail a cryptohome remove attempt. 590 // Set up mock async method caller to fail a cryptohome remove attempt.
591 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_NONE); 591 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_NONE);
592 EXPECT_CALL( 592 EXPECT_CALL(
593 *mock_caller_, 593 *mock_caller_,
594 AsyncRemove(cryptohome::Identification(user_context_.GetAccountId()), _)) 594 AsyncRemove(cryptohome::Identification(user_context_.GetAccountId()), _))
595 .Times(1) 595 .Times(1)
596 .RetiresOnSaturation(); 596 .RetiresOnSaturation();
597 597
598 SetAttemptState(auth_.get(), state_.release()); 598 SetAttemptState(auth_.get(), state_.release());
599 599
600 auth_->ResyncEncryptedData(); 600 auth_->ResyncEncryptedData();
601 base::MessageLoop::current()->Run(); 601 base::RunLoop().Run();
602 } 602 }
603 603
604 TEST_F(CryptohomeAuthenticatorTest, DriveRequestOldPassword) { 604 TEST_F(CryptohomeAuthenticatorTest, DriveRequestOldPassword) {
605 FailOnLoginSuccess(); 605 FailOnLoginSuccess();
606 ExpectPasswordChange(); 606 ExpectPasswordChange();
607 607
608 state_->PresetCryptohomeStatus(false, cryptohome::MOUNT_ERROR_KEY_FAILURE); 608 state_->PresetCryptohomeStatus(false, cryptohome::MOUNT_ERROR_KEY_FAILURE);
609 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone()); 609 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone());
610 SetAttemptState(auth_.get(), state_.release()); 610 SetAttemptState(auth_.get(), state_.release());
611 611
(...skipping 19 matching lines...) Expand all
631 // Set up mock homedir methods to respond successfully to a cryptohome mount 631 // Set up mock homedir methods to respond successfully to a cryptohome mount
632 // attempt. 632 // attempt.
633 ExpectGetKeyDataExCall(std::unique_ptr<int64_t>(), 633 ExpectGetKeyDataExCall(std::unique_ptr<int64_t>(),
634 std::unique_ptr<std::string>()); 634 std::unique_ptr<std::string>());
635 ExpectMountExCall(false /* expect_create_attempt */); 635 ExpectMountExCall(false /* expect_create_attempt */);
636 636
637 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone()); 637 state_->PresetOnlineLoginStatus(AuthFailure::AuthFailureNone());
638 SetAttemptState(auth_.get(), state_.release()); 638 SetAttemptState(auth_.get(), state_.release());
639 639
640 auth_->RecoverEncryptedData(std::string()); 640 auth_->RecoverEncryptedData(std::string());
641 base::MessageLoop::current()->Run(); 641 base::RunLoop().Run();
642 } 642 }
643 643
644 TEST_F(CryptohomeAuthenticatorTest, DriveDataRecoverButFail) { 644 TEST_F(CryptohomeAuthenticatorTest, DriveDataRecoverButFail) {
645 FailOnLoginSuccess(); 645 FailOnLoginSuccess();
646 ExpectPasswordChange(); 646 ExpectPasswordChange();
647 647
648 // Set up mock async method caller to fail a key migration attempt, 648 // Set up mock async method caller to fail a key migration attempt,
649 // asserting that the wrong password was used. 649 // asserting that the wrong password was used.
650 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_KEY_FAILURE); 650 mock_caller_->SetUp(false, cryptohome::MOUNT_ERROR_KEY_FAILURE);
651 EXPECT_CALL( 651 EXPECT_CALL(
652 *mock_caller_, 652 *mock_caller_,
653 AsyncMigrateKey(cryptohome::Identification(user_context_.GetAccountId()), 653 AsyncMigrateKey(cryptohome::Identification(user_context_.GetAccountId()),
654 _, transformed_key_.GetSecret(), _)) 654 _, transformed_key_.GetSecret(), _))
655 .Times(1) 655 .Times(1)
656 .RetiresOnSaturation(); 656 .RetiresOnSaturation();
657 657
658 SetAttemptState(auth_.get(), state_.release()); 658 SetAttemptState(auth_.get(), state_.release());
659 659
660 auth_->RecoverEncryptedData(std::string()); 660 auth_->RecoverEncryptedData(std::string());
661 base::MessageLoop::current()->Run(); 661 base::RunLoop().Run();
662 } 662 }
663 663
664 TEST_F(CryptohomeAuthenticatorTest, ResolveNoMountToFailedMount) { 664 TEST_F(CryptohomeAuthenticatorTest, ResolveNoMountToFailedMount) {
665 // Set up state as though a cryptohome mount attempt has occurred 665 // Set up state as though a cryptohome mount attempt has occurred
666 // and been rejected because the user doesn't exist. 666 // and been rejected because the user doesn't exist.
667 state_->PresetCryptohomeStatus(false, 667 state_->PresetCryptohomeStatus(false,
668 cryptohome::MOUNT_ERROR_USER_DOES_NOT_EXIST); 668 cryptohome::MOUNT_ERROR_USER_DOES_NOT_EXIST);
669 669
670 // When there is no online attempt and online results, NO_MOUNT will be 670 // When there is no online attempt and online results, NO_MOUNT will be
671 // resolved to FAILED_MOUNT. 671 // resolved to FAILED_MOUNT.
(...skipping 70 matching lines...) Expand 10 before | Expand all | Expand 10 after
742 // key-check attempt. 742 // key-check attempt.
743 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE); 743 mock_caller_->SetUp(true, cryptohome::MOUNT_ERROR_NONE);
744 EXPECT_CALL( 744 EXPECT_CALL(
745 *mock_caller_, 745 *mock_caller_,
746 AsyncCheckKey(cryptohome::Identification(user_context_.GetAccountId()), _, 746 AsyncCheckKey(cryptohome::Identification(user_context_.GetAccountId()), _,
747 _)) 747 _))
748 .Times(1) 748 .Times(1)
749 .RetiresOnSaturation(); 749 .RetiresOnSaturation();
750 750
751 auth_->AuthenticateToUnlock(user_context_); 751 auth_->AuthenticateToUnlock(user_context_);
752 base::MessageLoop::current()->Run(); 752 base::RunLoop().Run();
753 } 753 }
754 754
755 TEST_F(CryptohomeAuthenticatorTest, DriveLoginWithPreHashedPassword) { 755 TEST_F(CryptohomeAuthenticatorTest, DriveLoginWithPreHashedPassword) {
756 CreateTransformedKey(Key::KEY_TYPE_SALTED_SHA256, kSalt); 756 CreateTransformedKey(Key::KEY_TYPE_SALTED_SHA256, kSalt);
757 757
758 UserContext expected_user_context(user_context_with_transformed_key_); 758 UserContext expected_user_context(user_context_with_transformed_key_);
759 expected_user_context.SetUserIDHash( 759 expected_user_context.SetUserIDHash(
760 cryptohome::MockAsyncMethodCaller::kFakeSanitizedUsername); 760 cryptohome::MockAsyncMethodCaller::kFakeSanitizedUsername);
761 ExpectLoginSuccess(expected_user_context); 761 ExpectLoginSuccess(expected_user_context);
762 FailOnLoginFailure(); 762 FailOnLoginFailure();
(...skipping 20 matching lines...) Expand all
783 // pre-hashed key was used to create the cryptohome but without the required 783 // pre-hashed key was used to create the cryptohome but without the required
784 // salt. 784 // salt.
785 ExpectGetKeyDataExCall(base::MakeUnique<int64_t>(Key::KEY_TYPE_SALTED_SHA256), 785 ExpectGetKeyDataExCall(base::MakeUnique<int64_t>(Key::KEY_TYPE_SALTED_SHA256),
786 std::unique_ptr<std::string>()); 786 std::unique_ptr<std::string>());
787 787
788 auth_->AuthenticateToLogin(NULL, user_context_); 788 auth_->AuthenticateToLogin(NULL, user_context_);
789 base::RunLoop().Run(); 789 base::RunLoop().Run();
790 } 790 }
791 791
792 } // namespace chromeos 792 } // namespace chromeos
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698