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

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

Issue 2529093002: Hide PSL matches in the password bubble after the account chooser. (Closed)
Patch Set: Created 4 years, 1 month 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 61bb1927a08bf51b2bc37b5e08a51b4f9639bc99..56e2b488e4b4bcaf306096ddb6d3b3639a2ce410 100644
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
@@ -41,6 +41,7 @@
using ::testing::DoAll;
using ::testing::ElementsAre;
+using ::testing::IsEmpty;
using ::testing::Pointee;
using ::testing::Return;
using ::testing::SaveArg;
@@ -626,6 +627,41 @@ TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialPrefetch) {
EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->GetState());
}
+TEST_F(ManagePasswordsUIControllerTest, ChooseCredentialPSL) {
+ test_local_form().is_public_suffix_match = true;
+ std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials;
+ local_credentials.emplace_back(new autofill::PasswordForm(test_local_form()));
+ std::vector<std::unique_ptr<autofill::PasswordForm>> federated_credentials;
+ GURL origin("http://example.com");
+ PasswordDialogController* dialog_controller = nullptr;
+ EXPECT_CALL(*controller(), CreateAccountChooser(_)).WillOnce(
+ DoAll(SaveArg<0>(&dialog_controller), Return(&dialog_prompt())));
+ EXPECT_CALL(dialog_prompt(), ShowAccountChooser());
+ EXPECT_CALL(*controller(), OnUpdateBubbleAndIconVisibility());
+ EXPECT_CALL(*controller(), HasBrowserWindow()).WillOnce(Return(true));
+ EXPECT_TRUE(controller()->OnChooseCredentials(
+ std::move(local_credentials), std::move(federated_credentials), origin,
+ base::Bind(&ManagePasswordsUIControllerTest::CredentialCallback,
+ base::Unretained(this))));
+ EXPECT_EQ(password_manager::ui::CREDENTIAL_REQUEST_STATE,
+ controller()->GetState());
+ EXPECT_EQ(origin, controller()->GetOrigin());
+ EXPECT_THAT(controller()->GetCurrentForms(), IsEmpty());
+ ASSERT_THAT(dialog_controller->GetLocalForms(),
+ ElementsAre(Pointee(test_local_form())));
+ EXPECT_THAT(dialog_controller->GetFederationsForms(), testing::IsEmpty());
+ ExpectIconStateIs(password_manager::ui::INACTIVE_STATE);
+
+ EXPECT_CALL(dialog_prompt(), ControllerGone());
+ EXPECT_CALL(*this, CredentialCallback(Pointee(test_local_form())));
+ EXPECT_CALL(*controller(), OnUpdateBubbleAndIconVisibility());
+ dialog_controller->OnChooseCredentials(
+ *dialog_controller->GetLocalForms()[0],
+ password_manager::CredentialType::CREDENTIAL_TYPE_PASSWORD);
+ EXPECT_EQ(password_manager::ui::MANAGE_STATE, controller()->GetState());
+ EXPECT_THAT(controller()->GetCurrentForms(), IsEmpty());
+}
+
TEST_F(ManagePasswordsUIControllerTest, AutoSignin) {
std::vector<std::unique_ptr<autofill::PasswordForm>> local_credentials;
local_credentials.emplace_back(new autofill::PasswordForm(test_local_form()));

Powered by Google App Engine
This is Rietveld 408576698