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

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

Issue 1702333002: Don't close the password bubble on implicit navigations. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: comments Created 4 years, 10 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 2aed0db90778c47ea7ec592c8f2069e0a2a91ae6..66566a904aadfc8c6870527a70e470acb4ca08c0 100644
--- a/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
+++ b/chrome/browser/ui/passwords/manage_passwords_ui_controller_unittest.cc
@@ -385,32 +385,34 @@ TEST_F(ManagePasswordsUIControllerTest, PasswordBlacklisted) {
ExpectIconStateIs(password_manager::ui::PENDING_PASSWORD_STATE);
}
-TEST_F(ManagePasswordsUIControllerTest, RedirectNavigations) {
+TEST_F(ManagePasswordsUIControllerTest, NormalNavigations) {
scoped_ptr<password_manager::PasswordFormManager> test_form_manager(
CreateFormManager());
controller()->OnPasswordSubmitted(std::move(test_form_manager));
ExpectIconStateIs(password_manager::ui::PENDING_PASSWORD_STATE);
- // Fake-redirect. We expect the bubble's state to persist so a user reasonably
- // have been able to interact with the bubble. This happens on
+ // Fake-navigate. We expect the bubble's state to persist so a user reasonably
+ // has been able to interact with the bubble. This happens on
// `accounts.google.com`, for instance.
- content::FrameNavigateParams params;
- params.transition = ui::PAGE_TRANSITION_SERVER_REDIRECT;
- controller()->DidNavigateMainFrame(content::LoadCommittedDetails(), params);
-
+ controller()->DidNavigateMainFrame(content::LoadCommittedDetails(),
+ content::FrameNavigateParams());
+ EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_STATE,
+ controller()->GetState());
ExpectIconStateIs(password_manager::ui::PENDING_PASSWORD_STATE);
}
-TEST_F(ManagePasswordsUIControllerTest, NormalNavigations) {
+TEST_F(ManagePasswordsUIControllerTest, NormalNavigationsClosedBubble) {
scoped_ptr<password_manager::PasswordFormManager> test_form_manager(
CreateFormManager());
controller()->OnPasswordSubmitted(std::move(test_form_manager));
- ExpectIconStateIs(password_manager::ui::PENDING_PASSWORD_STATE);
+ controller()->SavePassword();
+ controller()->OnBubbleHidden();
+ ExpectIconStateIs(password_manager::ui::MANAGE_STATE);
- // Fake-navigate. We expect the bubble's state to be reset.
+ // Fake-navigate. There is no bubble, reset the state.
controller()->DidNavigateMainFrame(content::LoadCommittedDetails(),
content::FrameNavigateParams());
-
+ EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->GetState());
ExpectIconStateIs(password_manager::ui::INACTIVE_STATE);
}
@@ -653,6 +655,7 @@ TEST_F(ManagePasswordsUIControllerTest, AutoSigninFirstRunAfterNavigation) {
EXPECT_CALL(dialog_prompt(), ShowAutoSigninPrompt());
controller()->OnPromptEnableAutoSignin();
+ // The dialog should survive any navigation.
EXPECT_CALL(dialog_prompt(), ControllerGone()).Times(0);
content::FrameNavigateParams params;
params.transition = ui::PAGE_TRANSITION_LINK;
@@ -710,16 +713,3 @@ TEST_F(ManagePasswordsUIControllerTest, PasswordUpdated) {
controller()->UpdatePassword(autofill::PasswordForm());
ExpectIconStateIs(password_manager::ui::MANAGE_STATE);
}
-
-TEST_F(ManagePasswordsUIControllerTest, NavigationWhenUpdateBubbleActive) {
- scoped_ptr<password_manager::PasswordFormManager> test_form_manager(
- CreateFormManager());
- controller()->OnUpdatePasswordSubmitted(std::move(test_form_manager));
- EXPECT_EQ(password_manager::ui::PENDING_PASSWORD_UPDATE_STATE,
- controller()->GetState());
- controller()->DidNavigateMainFrame(content::LoadCommittedDetails(),
- content::FrameNavigateParams());
- EXPECT_EQ(password_manager::ui::INACTIVE_STATE, controller()->GetState());
- // The following line shouldn't crash browser.
- controller()->OnNoInteractionOnUpdate();
-}
« 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