| Index: components/password_manager/core/browser/password_form_manager_unittest.cc
|
| diff --git a/components/password_manager/core/browser/password_form_manager_unittest.cc b/components/password_manager/core/browser/password_form_manager_unittest.cc
|
| index c911e28b0856a295a247dccf49587c7ee677c8dd..fc60ff86c94065482d3a38c0b8a6eb4e9ef1674c 100644
|
| --- a/components/password_manager/core/browser/password_form_manager_unittest.cc
|
| +++ b/components/password_manager/core/browser/password_form_manager_unittest.cc
|
| @@ -2965,4 +2965,49 @@ TEST_F(PasswordFormManagerTest, FederatedCredentialsFiltered) {
|
| EXPECT_EQ(*(form_manager()->best_matches().begin()->second), *saved_match());
|
| }
|
|
|
| +TEST_F(PasswordFormManagerTest, ProbablyAccountCreationUpload) {
|
| + PasswordForm form(*observed_form());
|
| + form.form_data = saved_match()->form_data;
|
| +
|
| + PasswordFormManager form_manager(password_manager(), client(),
|
| + client()->driver(), form, false);
|
| +
|
| + PasswordForm form_to_save(form);
|
| + form_to_save.preferred = true;
|
| + form_to_save.username_element = ASCIIToUTF16("observed-username-field");
|
| + form_to_save.username_value = saved_match()->username_value;
|
| + form_to_save.password_value = saved_match()->password_value;
|
| + form_to_save.does_look_like_signup_form = true;
|
| +
|
| + form_manager.SimulateFetchMatchingLoginsFromPasswordStore();
|
| + ScopedVector<PasswordForm> result;
|
| + form_manager.OnGetPasswordStoreResults(std::move(result));
|
| +
|
| + autofill::FormStructure pending_structure(form_to_save.form_data);
|
| + autofill::ServerFieldTypeSet expected_available_field_types;
|
| + std::map<base::string16, autofill::ServerFieldType> expected_types;
|
| + expected_types[ASCIIToUTF16("full_name")] = autofill::UNKNOWN_TYPE;
|
| + expected_available_field_types.insert(autofill::USERNAME);
|
| + expected_types[saved_match()->username_element] = autofill::USERNAME;
|
| + expected_available_field_types.insert(
|
| + autofill::PROBABLY_ACCOUNT_CREATION_PASSWORD);
|
| + expected_types[saved_match()->password_element] =
|
| + autofill::PROBABLY_ACCOUNT_CREATION_PASSWORD;
|
| +
|
| + std::map<base::string16,
|
| + autofill::AutofillUploadContents::Field::PasswordGenerationType>
|
| + expected_generation_types;
|
| +
|
| + EXPECT_CALL(
|
| + *client()->mock_driver()->mock_autofill_download_manager(),
|
| + StartUploadRequest(
|
| + CheckUploadFormStructure(pending_structure.FormSignature(),
|
| + expected_types, expected_generation_types),
|
| + false, expected_available_field_types, std::string(), true));
|
| +
|
| + form_manager.ProvisionallySave(
|
| + form_to_save, PasswordFormManager::IGNORE_OTHER_POSSIBLE_USERNAMES);
|
| + form_manager.Save();
|
| +}
|
| +
|
| } // namespace password_manager
|
|
|