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

Unified Diff: chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc

Issue 848723002: Credential Manager API: Showing both local and federated logins. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 11 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
diff --git a/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc b/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
index c12acc68759f5e375bc362705aa1c57a02db4646..b91b74b5e7a9bd5f2581545457aa5e6ebab1e190 100644
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
@@ -322,7 +322,7 @@ TEST_F(ManagePasswordsUIControllerTest, AutomaticPasswordSave) {
EXPECT_EQ(password_manager::ui::MANAGE_STATE, mock.state());
}
-TEST_F(ManagePasswordsUIControllerTest, ChooseCredential) {
+TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialLocal) {
ScopedVector<autofill::PasswordForm> local_credentials;
local_credentials.push_back(new autofill::PasswordForm(test_form()));
ScopedVector<autofill::PasswordForm> federated_credentials;
@@ -341,16 +341,44 @@ TEST_F(ManagePasswordsUIControllerTest, ChooseCredential) {
controller()->UpdateIconAndBubbleState(&mock);
EXPECT_EQ(password_manager::ui::CREDENTIAL_REQUEST_STATE, mock.state());
- controller()->ManagePasswordsUIController::ChooseCredential(true,
- test_form());
+ controller()->ManagePasswordsUIController::ChooseCredential(
+ test_form(), password_manager::CredentialType::CREDENTIAL_TYPE_LOCAL);
EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->state());
ASSERT_TRUE(credential_info());
EXPECT_EQ(test_form().username_value, credential_info()->id);
EXPECT_EQ(test_form().password_value, credential_info()->password);
+ EXPECT_TRUE(credential_info()->federation.is_empty());
EXPECT_EQ(password_manager::CredentialType::CREDENTIAL_TYPE_LOCAL,
credential_info()->type);
}
+TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialFederated) {
+ ScopedVector<autofill::PasswordForm> local_credentials;
+ ScopedVector<autofill::PasswordForm> federated_credentials;
+ federated_credentials.push_back(new autofill::PasswordForm(test_form()));
+ EXPECT_TRUE(controller()->OnChooseCredentials(
+ local_credentials.Pass(), federated_credentials.Pass(),
+ base::Bind(&ManagePasswordsUIControllerTest::CredentialCallback,
+ base::Unretained(this))));
+ EXPECT_EQ(password_manager::ui::CREDENTIAL_REQUEST_AND_BUBBLE_STATE,
+ controller()->state());
+ EXPECT_FALSE(controller()->PasswordPendingUserDecision());
+ EXPECT_EQ(autofill::ConstPasswordFormMap(), controller()->best_matches());
+
+ ManagePasswordsIconMock mock;
+ controller()->UpdateIconAndBubbleState(&mock);
+ EXPECT_EQ(password_manager::ui::CREDENTIAL_REQUEST_STATE, mock.state());
+
+ controller()->ManagePasswordsUIController::ChooseCredential(
+ test_form(), password_manager::CredentialType::CREDENTIAL_TYPE_FEDERATED);
+ EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->state());
+ ASSERT_TRUE(credential_info());
+ EXPECT_EQ(test_form().username_value, credential_info()->id);
+ EXPECT_TRUE(credential_info()->password.empty());
+ EXPECT_EQ(password_manager::CredentialType::CREDENTIAL_TYPE_FEDERATED,
+ credential_info()->type);
+}
+
TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialCancel) {
ScopedVector<autofill::PasswordForm> local_credentials;
local_credentials.push_back(new autofill::PasswordForm(test_form()));
@@ -363,10 +391,12 @@ TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialCancel) {
EXPECT_EQ(password_manager::ui::CREDENTIAL_REQUEST_AND_BUBBLE_STATE,
controller()->state());
- controller()->ManagePasswordsUIController::ChooseCredential(false,
- test_form());
+ controller()->ManagePasswordsUIController::ChooseCredential(
+ test_form(), password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY);
EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->state());
ASSERT_TRUE(credential_info());
+ EXPECT_TRUE(credential_info()->federation.is_empty());
+ EXPECT_TRUE(credential_info()->password.empty());
EXPECT_EQ(password_manager::CredentialType::CREDENTIAL_TYPE_EMPTY,
credential_info()->type);
}

Powered by Google App Engine
This is Rietveld 408576698