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

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

Issue 276583003: Password bubble: Deal correctly with blacklist state changes. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase. Created 6 years, 7 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
« no previous file with comments | « chrome/browser/ui/passwords/manage_passwords_ui_controller.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 420a562e31ab87148fa15696b76efcb397f2d865..ba3ecfe30bd727b8f2630d5b9d9cf3dfc6b8732e 100644
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
@@ -102,6 +102,7 @@ TEST_F(ManagePasswordsUIControllerTest, PasswordSubmitted) {
}
TEST_F(ManagePasswordsUIControllerTest, BlacklistBlockedAutofill) {
+ test_form().blacklisted_by_user = true;
base::string16 kTestUsername = base::ASCIIToUTF16("test_username");
autofill::PasswordFormMap map;
map[kTestUsername] = &test_form();
@@ -131,3 +132,46 @@ TEST_F(ManagePasswordsUIControllerTest, ClickedUnblacklist) {
controller()->UpdateIconAndBubbleState(&mock);
EXPECT_EQ(password_manager::ui::MANAGE_STATE, mock.state());
}
+
+TEST_F(ManagePasswordsUIControllerTest, UnblacklistedElsewhere) {
+ test_form().blacklisted_by_user = true;
+ base::string16 kTestUsername = base::ASCIIToUTF16("test_username");
+ autofill::PasswordFormMap map;
+ map[kTestUsername] = &test_form();
+ controller()->OnBlacklistBlockedAutofill(map);
+
+ password_manager::PasswordStoreChange change(
+ password_manager::PasswordStoreChange::REMOVE, test_form());
+ password_manager::PasswordStoreChangeList list(1, change);
+ controller()->OnLoginsChanged(list);
+
+ EXPECT_EQ(password_manager::ui::MANAGE_STATE, controller()->state());
+ EXPECT_FALSE(controller()->PasswordPendingUserDecision());
+ EXPECT_EQ(test_form().origin, controller()->origin());
+
+ ManagePasswordsIconMock mock;
+ controller()->UpdateIconAndBubbleState(&mock);
+ EXPECT_EQ(password_manager::ui::MANAGE_STATE, mock.state());
+}
+
+TEST_F(ManagePasswordsUIControllerTest, BlacklistedElsewhere) {
+ base::string16 kTestUsername = base::ASCIIToUTF16("test_username");
+ autofill::PasswordFormMap map;
+ map[kTestUsername] = &test_form();
+ controller()->OnPasswordAutofilled(map);
+
+ test_form().blacklisted_by_user = true;
+ password_manager::PasswordStoreChange change(
+ password_manager::PasswordStoreChange::ADD, test_form());
+ password_manager::PasswordStoreChangeList list(1, change);
+ controller()->OnLoginsChanged(list);
+
+ EXPECT_EQ(password_manager::ui::BLACKLIST_STATE, controller()->state());
+ EXPECT_FALSE(controller()->PasswordPendingUserDecision());
+ EXPECT_EQ(test_form().origin, controller()->origin());
+
+ ManagePasswordsIconMock mock;
+ controller()->UpdateIconAndBubbleState(&mock);
+ EXPECT_EQ(password_manager::ui::BLACKLIST_STATE, mock.state());
+}
+
« no previous file with comments | « chrome/browser/ui/passwords/manage_passwords_ui_controller.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698