| Index: components/password_manager/core/browser/password_manager_unittest.cc
|
| diff --git a/components/password_manager/core/browser/password_manager_unittest.cc b/components/password_manager/core/browser/password_manager_unittest.cc
|
| index 6f760d85a19c51954beafef8d13ec86efcec501f..c1c45fcf7d611966c436803eece583177cbb138f 100644
|
| --- a/components/password_manager/core/browser/password_manager_unittest.cc
|
| +++ b/components/password_manager/core/browser/password_manager_unittest.cc
|
| @@ -39,19 +39,20 @@ class MockPasswordManagerClient : public StubPasswordManagerClient {
|
| MOCK_CONST_METHOD2(IsSyncAccountCredential,
|
| bool(const std::string&, const std::string&));
|
| MOCK_CONST_METHOD0(GetPasswordStore, PasswordStore*());
|
| - // The code inside EXPECT_CALL for PromptUserToSavePasswordPtr owns the
|
| - // PasswordFormManager* argument.
|
| - MOCK_METHOD2(PromptUserToSavePasswordPtr,
|
| + // The code inside EXPECT_CALL for PromptUserToSaveOrUpdatePasswordPtr owns
|
| + // the PasswordFormManager* argument.
|
| + MOCK_METHOD2(PromptUserToSaveOrUpdatePasswordPtr,
|
| void(PasswordFormManager*, CredentialSourceType type));
|
| MOCK_METHOD0(AutomaticPasswordSaveIndicator, void());
|
| MOCK_METHOD0(GetPrefs, PrefService*());
|
| MOCK_METHOD0(GetDriver, PasswordManagerDriver*());
|
|
|
| // Workaround for scoped_ptr<> lacking a copy constructor.
|
| - bool PromptUserToSavePassword(
|
| + bool PromptUserToSaveOrUpdatePassword(
|
| scoped_ptr<PasswordFormManager> manager,
|
| - password_manager::CredentialSourceType type) override {
|
| - PromptUserToSavePasswordPtr(manager.release(), type);
|
| + password_manager::CredentialSourceType type,
|
| + bool update_password) override {
|
| + PromptUserToSaveOrUpdatePasswordPtr(manager.release(), type);
|
| return false;
|
| }
|
| void AutomaticPasswordSave(scoped_ptr<PasswordFormManager> manager) override {
|
| @@ -219,7 +220,7 @@ TEST_F(PasswordManagerTest, FormSubmitWithOnlyNewPasswordField) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -263,7 +264,7 @@ TEST_F(PasswordManagerTest, GeneratedPasswordFormSubmitEmptyStore) {
|
| // consent by using the generated password. The form should be saved once
|
| // navigation occurs. The client will be informed that automatic saving has
|
| // occured.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| PasswordForm form_to_save;
|
| EXPECT_CALL(*store_, AddLogin(_)).WillOnce(SaveArg<0>(&form_to_save));
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator());
|
| @@ -301,7 +302,7 @@ TEST_F(PasswordManagerTest, FormSubmitNoGoodMatch) {
|
| // We still expect an add, since we didn't have a good match.
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -327,7 +328,7 @@ TEST_F(PasswordManagerTest, FormSeenThenLeftPage) {
|
|
|
| // No message from the renderer that a password was submitted. No
|
| // expected calls.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| observed.clear();
|
| manager()->OnPasswordFormsParsed(&driver_, observed);
|
| manager()->OnPasswordFormsRendered(&driver_, observed, true);
|
| @@ -349,7 +350,7 @@ TEST_F(PasswordManagerTest, FormSubmit) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -399,7 +400,7 @@ TEST_F(PasswordManagerTest, FormSubmitWithFormOnPreviousPage) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
| // Navigation after form submit, no forms appear.
|
| @@ -432,7 +433,7 @@ TEST_F(PasswordManagerTest, FormSubmitInvisibleLogin) {
|
| // Expect info bar to appear:
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -506,7 +507,7 @@ TEST_F(PasswordManagerTest, PasswordFormReappearance) {
|
| observed.push_back(MakeTwitterFailedLoginForm());
|
| // A PasswordForm appears, and is visible in the layout:
|
| // No expected calls to the PasswordStore...
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator()).Times(0);
|
| EXPECT_CALL(*store_, AddLogin(_)).Times(0);
|
| EXPECT_CALL(*store_, UpdateLogin(_)).Times(0);
|
| @@ -526,7 +527,7 @@ TEST_F(PasswordManagerTest, SyncCredentialsNotSaved) {
|
| manager()->OnPasswordFormsRendered(&driver_, observed, true);
|
|
|
| // User should not be prompted and password should not be saved.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| EXPECT_CALL(*store_, AddLogin(_)).Times(0);
|
| // Prefs are needed for failure logging about sync credentials.
|
| EXPECT_CALL(client_, GetPrefs()).WillRepeatedly(Return(nullptr));
|
| @@ -608,7 +609,7 @@ TEST_F(PasswordManagerTest, SyncCredentialsDroppedWhenObsolete) {
|
| // Because the user successfully uses an updated sync password, Chrome should
|
| // remove the obsolete copy of it.
|
| EXPECT_CALL(*store_, RemoveLogin(form));
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| observed.clear();
|
| manager()->OnPasswordFormsParsed(&driver_, observed);
|
| manager()->OnPasswordFormsRendered(&driver_, observed, true);
|
| @@ -668,7 +669,7 @@ TEST_F(PasswordManagerTest,
|
| observed.push_back(second_form);
|
|
|
| // Verify that no prompt to save the password is shown.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| manager()->OnPasswordFormsParsed(&driver_, observed);
|
| manager()->OnPasswordFormsRendered(&driver_, observed, true);
|
| }
|
| @@ -697,7 +698,7 @@ TEST_F(PasswordManagerTest, DoNotSaveWithEmptyNewPasswordAndNonemptyPassword) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -732,7 +733,7 @@ TEST_F(PasswordManagerTest, FormSubmitWithOnlyPasswordField) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -784,7 +785,7 @@ TEST_F(PasswordManagerTest, InPageNavigation) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -816,7 +817,7 @@ TEST_F(PasswordManagerTest, InPageNavigationBlacklistedSite) {
|
| // Prefs are needed for failure logging about blacklisting.
|
| EXPECT_CALL(client_, GetPrefs()).WillRepeatedly(Return(nullptr));
|
|
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
|
|
| manager()->OnInPageNavigation(&driver_, form);
|
| }
|
| @@ -850,7 +851,7 @@ TEST_F(PasswordManagerTest, SavingSignupForms_NoHTMLMatch) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -905,7 +906,7 @@ TEST_F(PasswordManagerTest, SavingSignupForms_NoActionMatch) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -959,7 +960,7 @@ TEST_F(PasswordManagerTest, FormSubmittedChangedWithAutofillResponse) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -999,7 +1000,7 @@ TEST_F(PasswordManagerTest, SaveFormFetchedAfterSubmit) {
|
|
|
| scoped_ptr<PasswordFormManager> form_manager_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_manager_to_save)));
|
|
|
| @@ -1035,7 +1036,7 @@ TEST_F(PasswordManagerTest, PasswordGenerationForceSaving) {
|
| // consent by using the generated password. The form should be saved once
|
| // navigation occurs. The client will be informed that automatic saving has
|
| // occured.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| PasswordForm form_to_save;
|
| EXPECT_CALL(*store_, AddLogin(_)).WillOnce(SaveArg<0>(&form_to_save));
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator());
|
| @@ -1075,7 +1076,7 @@ TEST_F(PasswordManagerTest, PasswordGenerationPasswordEdited) {
|
| // consent by using the generated password. The form should be saved once
|
| // navigation occurs. The client will be informed that automatic saving has
|
| // occurred.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| PasswordForm form_to_save;
|
| EXPECT_CALL(*store_, AddLogin(_)).WillOnce(SaveArg<0>(&form_to_save));
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator());
|
| @@ -1114,7 +1115,7 @@ TEST_F(PasswordManagerTest,
|
| OnPasswordFormSubmitted(form);
|
|
|
| // No infobar or prompt is shown if submission fails.
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator()).Times(0);
|
|
|
| // Simulate submission failing, with the same form being visible after
|
| @@ -1148,7 +1149,7 @@ TEST_F(PasswordManagerTest,
|
| // Verify that a normal prompt is shown instead of the force saving UI.
|
| scoped_ptr<PasswordFormManager> form_to_save;
|
| EXPECT_CALL(client_,
|
| - PromptUserToSavePasswordPtr(
|
| + PromptUserToSaveOrUpdatePasswordPtr(
|
| _, CredentialSourceType::CREDENTIAL_SOURCE_PASSWORD_MANAGER))
|
| .WillOnce(WithArg<0>(SaveToScopedPtr(&form_to_save)));
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator()).Times(0);
|
| @@ -1178,7 +1179,7 @@ TEST_F(PasswordManagerTest, PasswordGenerationUsernameChanged) {
|
| form.username_value = ASCIIToUTF16("new_username");
|
| OnPasswordFormSubmitted(form);
|
|
|
| - EXPECT_CALL(client_, PromptUserToSavePasswordPtr(_, _)).Times(0);
|
| + EXPECT_CALL(client_, PromptUserToSaveOrUpdatePasswordPtr(_, _)).Times(0);
|
| PasswordForm form_to_save;
|
| EXPECT_CALL(*store_, AddLogin(_)).WillOnce(SaveArg<0>(&form_to_save));
|
| EXPECT_CALL(client_, AutomaticPasswordSaveIndicator());
|
|
|