Index: chrome/browser/ui/passwords/manage_passwords_state_unittest.cc |
diff --git a/chrome/browser/ui/passwords/manage_passwords_state_unittest.cc b/chrome/browser/ui/passwords/manage_passwords_state_unittest.cc |
index 6bcfa7c7585b32cbafdb16c9dee82d7dceb37acc..08c365acd38190b3e3df209b8639cee6d80e2f88 100644 |
--- a/chrome/browser/ui/passwords/manage_passwords_state_unittest.cc |
+++ b/chrome/browser/ui/passwords/manage_passwords_state_unittest.cc |
@@ -23,8 +23,6 @@ namespace { |
class ManagePasswordsStateTest : public testing::Test { |
public: |
- ManagePasswordsStateTest() = default; |
- |
void SetUp() override { |
test_local_form_.origin = GURL("http://example.com"); |
test_local_form_.username_value = base::ASCIIToUTF16("username"); |
@@ -65,8 +63,6 @@ class ManagePasswordsStateTest : public testing::Test { |
autofill::PasswordForm test_local_form_; |
autofill::PasswordForm test_submitted_form_; |
autofill::PasswordForm test_federated_form_; |
- |
- DISALLOW_COPY_AND_ASSIGN(ManagePasswordsStateTest); |
}; |
scoped_ptr<password_manager::PasswordFormManager> |
@@ -357,49 +353,6 @@ TEST_F(ManagePasswordsStateTest, InactiveOnPSLMatched) { |
EXPECT_FALSE(passwords_data().form_manager()); |
} |
-TEST_F(ManagePasswordsStateTest, BlacklistBlockedAutofill) { |
- scoped_ptr<autofill::PasswordForm> blacklisted(new autofill::PasswordForm); |
- autofill::PasswordForm& blacklisted_ref = *blacklisted; |
- blacklisted_ref.blacklisted_by_user = true; |
- blacklisted_ref.origin = GURL("http://example.com/bad"); |
- autofill::PasswordFormMap password_form_map; |
- password_form_map.insert(blacklisted_ref.username_value, blacklisted.Pass()); |
- scoped_ptr<autofill::PasswordForm> test_form( |
- new autofill::PasswordForm(test_local_form())); |
- autofill::PasswordForm* test_form_ptr = test_form.get(); |
- password_form_map.insert(test_form_ptr->username_value, test_form.Pass()); |
- passwords_data().OnBlacklistBlockedAutofill(password_form_map); |
- |
- EXPECT_THAT(passwords_data().GetCurrentForms(), |
- ElementsAre(Pointee(blacklisted_ref), Pointee(*test_form_ptr))); |
- EXPECT_THAT(passwords_data().federated_credentials_forms(), IsEmpty()); |
- EXPECT_EQ(password_manager::ui::BLACKLIST_STATE, passwords_data().state()); |
- EXPECT_EQ(blacklisted_ref.origin, passwords_data().origin()); |
- |
- // |passwords_data| should hold a separate copy of test_form. |
- EXPECT_THAT(passwords_data().GetCurrentForms(), Not(Contains(test_form_ptr))); |
- TestAllUpdates(); |
-} |
- |
-TEST_F(ManagePasswordsStateTest, Unblacklist) { |
- scoped_ptr<autofill::PasswordForm> blacklisted(new autofill::PasswordForm); |
- autofill::PasswordForm& blacklisted_ref = *blacklisted; |
- blacklisted_ref.blacklisted_by_user = true; |
- blacklisted_ref.origin = test_local_form().origin; |
- autofill::PasswordFormMap password_form_map; |
- password_form_map.insert(blacklisted_ref.username_value, blacklisted.Pass()); |
- passwords_data().OnBlacklistBlockedAutofill(password_form_map); |
- EXPECT_EQ(password_manager::ui::BLACKLIST_STATE, passwords_data().state()); |
- passwords_data().TransitionToState(password_manager::ui::MANAGE_STATE); |
- |
- EXPECT_THAT(passwords_data().GetCurrentForms(), |
- ElementsAre(Pointee(blacklisted_ref))); |
- EXPECT_THAT(passwords_data().federated_credentials_forms(), IsEmpty()); |
- EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state()); |
- EXPECT_EQ(blacklisted_ref.origin, passwords_data().origin()); |
- TestAllUpdates(); |
-} |
- |
TEST_F(ManagePasswordsStateTest, OnInactive) { |
scoped_ptr<password_manager::PasswordFormManager> test_form_manager( |
CreateFormManager()); |
@@ -596,29 +549,39 @@ TEST_F(ManagePasswordsStateTest, BackgroundAutofilledToBlacklisted) { |
} |
TEST_F(ManagePasswordsStateTest, BlacklistedToAutofilled) { |
- autofill::PasswordFormMap password_form_map; |
- password_form_map.insert( |
- test_local_form().username_value, |
- make_scoped_ptr(new autofill::PasswordForm(test_local_form()))); |
- scoped_ptr<autofill::PasswordForm> blacklisted(new autofill::PasswordForm); |
- autofill::PasswordForm& blacklisted_ref = *blacklisted; |
- blacklisted_ref.blacklisted_by_user = true; |
- blacklisted_ref.origin = GURL("http://example.com/bad"); |
- password_form_map.insert(blacklisted_ref.username_value, blacklisted.Pass()); |
- passwords_data().OnBlacklistBlockedAutofill(password_form_map); |
+ // Start in PENDING_PASSWORD_STATE and transit to the blacklisted state. |
+ scoped_ptr<password_manager::PasswordFormManager> test_form_manager( |
+ CreateFormManager()); |
+ test_form_manager->ProvisionallySave( |
+ test_submitted_form(), |
+ password_manager::PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES); |
+ passwords_data().OnPendingPassword(test_form_manager.Pass()); |
+ |
+ // Push the balcklisted form. |
+ autofill::PasswordForm blacklisted = test_local_form(); |
+ blacklisted.blacklisted_by_user = true; |
+ blacklisted.username_value = base::string16(); |
+ blacklisted.password_value = base::string16(); |
+ password_manager::PasswordStoreChange change( |
+ password_manager::PasswordStoreChange::ADD, blacklisted); |
+ password_manager::PasswordStoreChangeList list(1, change); |
+ passwords_data().ProcessLoginsChanged(list); |
+ EXPECT_THAT(passwords_data().GetCurrentForms(), |
+ UnorderedElementsAre(Pointee(test_local_form()), |
+ Pointee(blacklisted))); |
+ EXPECT_THAT(passwords_data().federated_credentials_forms(), IsEmpty()); |
EXPECT_EQ(password_manager::ui::BLACKLIST_STATE, passwords_data().state()); |
- EXPECT_EQ(blacklisted_ref.origin, passwords_data().origin()); |
+ EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); |
// Delete the blacklisted form. |
- password_manager::PasswordStoreChangeList list; |
- list.push_back(password_manager::PasswordStoreChange( |
- password_manager::PasswordStoreChange::REMOVE, blacklisted_ref)); |
+ list[0] = password_manager::PasswordStoreChange( |
+ password_manager::PasswordStoreChange::REMOVE, blacklisted); |
passwords_data().ProcessLoginsChanged(list); |
EXPECT_THAT(passwords_data().GetCurrentForms(), |
ElementsAre(Pointee(test_local_form()))); |
EXPECT_THAT(passwords_data().federated_credentials_forms(), IsEmpty()); |
EXPECT_EQ(password_manager::ui::MANAGE_STATE, passwords_data().state()); |
- EXPECT_EQ(blacklisted_ref.origin, passwords_data().origin()); |
+ EXPECT_EQ(test_submitted_form().origin, passwords_data().origin()); |
} |
} // namespace |