Skip to content

Commit

Permalink
Use modernized version of CreateTestCreditCardFormData.
Browse files Browse the repository at this point in the history
Bug: 1465839
Change-Id: I30d744a0ef1fa2a68c6bb372b1ed1d7ba4fa5752
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4789268
Code-Coverage: findit-for-me@appspot.gserviceaccount.com <findit-for-me@appspot.gserviceaccount.com>
Reviewed-by: Christoph Schwering <schwering@google.com>
Commit-Queue: Jan Keitel <jkeitel@google.com>
Cr-Commit-Position: refs/heads/main@{#1185126}
  • Loading branch information
Jan Keitel authored and Chromium LUCI CQ committed Aug 18, 2023
1 parent 4b788d0 commit 03a558d
Show file tree
Hide file tree
Showing 8 changed files with 165 additions and 214 deletions.
43 changes: 24 additions & 19 deletions chrome/browser/fast_checkout/fast_checkout_client_impl_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,12 @@ CreditCard GetEmptyCreditCard() {

constexpr char kUrl[] = "https://www.example.com";
constexpr char kOtherUrl[] = "https://www.example2.com";

// The index of the `FormFieldData` in the test credit card form created in
// autofill::test::CreateTestCreditCardForm.
constexpr size_t kCreditCardFieldIndexInForm = 2;
constexpr size_t kFirstNameFieldIndexInForm = 0;

const std::u16string kAutofillProfileLabel = u"Home";
const std::u16string kCreditCardNickname = u"Card's nickname";
const AutofillProfile kProfile1 = autofill::test::GetFullProfile();
Expand Down Expand Up @@ -366,25 +372,20 @@ class FastCheckoutClientImplTest : public ChromeRenderViewHostTestHarness {
}

std::unique_ptr<autofill::FormStructure> SetUpCreditCardForm() {
FormData credit_card_form_data;
autofill::test::CreateTestCreditCardFormData(&credit_card_form_data, true,
false, true);
auto credit_card_form_structure =
std::make_unique<autofill::FormStructure>(credit_card_form_data);
credit_card_form_structure->field(0)->set_heuristic_type(
autofill::PatternSource::kLegacy,
autofill::ServerFieldType::CREDIT_CARD_NUMBER);
auto credit_card_form_structure = std::make_unique<autofill::FormStructure>(
autofill::test::CreateTestCreditCardFormData(true, false, true));
credit_card_form_structure->field(kCreditCardFieldIndexInForm)
->set_heuristic_type(autofill::PatternSource::kLegacy,
autofill::ServerFieldType::CREDIT_CARD_NUMBER);
return credit_card_form_structure;
}

std::unique_ptr<autofill::FormStructure> SetUpAddressForm() {
FormData address_form_data;
autofill::test::CreateTestAddressFormData(&address_form_data);
auto address_form_structure =
std::make_unique<autofill::FormStructure>(address_form_data);
address_form_structure->field(0)->set_heuristic_type(
autofill::PatternSource::kLegacy,
autofill::ServerFieldType::NAME_FIRST);
auto address_form_structure = std::make_unique<autofill::FormStructure>(
autofill::test::CreateTestAddressFormData());
address_form_structure->field(kFirstNameFieldIndexInForm)
->set_heuristic_type(autofill::PatternSource::kLegacy,
autofill::ServerFieldType::NAME_FIRST);
return address_form_structure;
}

Expand Down Expand Up @@ -764,7 +765,8 @@ TEST_F(FastCheckoutClientImplTest, OnAfterLoadedServerPredictions_FillsForms) {
autofill::FormSignature credit_card_form_signature =
credit_card_form->form_signature();
FormData address_form_data = address_form->ToFormData();
FormFieldData address_form_field_data = *address_form->field(0);
FormFieldData address_form_field_data =
*address_form->field(kFirstNameFieldIndexInForm);

auto [autofill_profile, credit_card] = StartRunAndSelectOptions(
{address_form_signature, credit_card_form_signature});
Expand Down Expand Up @@ -816,7 +818,8 @@ TEST_F(FastCheckoutClientImplTest,
autofill::payments::FullCardRequest* full_card_request =
autofill_client()->GetCvcAuthenticator()->GetFullCardRequest();
std::u16string cvc = u"123";
const FormFieldData& field = *credit_card_form->field(0);
const FormFieldData& field =
*credit_card_form->field(kCreditCardFieldIndexInForm);

EXPECT_CALL(*autofill_manager(),
FillCreditCardFormImpl(
Expand Down Expand Up @@ -988,7 +991,8 @@ TEST_F(FastCheckoutClientImplTest,
{address_form->form_signature(), credit_card_form->form_signature()});
autofill::payments::FullCardRequest* full_card_request =
autofill_client()->GetCvcAuthenticator()->GetFullCardRequest();
const FormFieldData& field = *credit_card_form->field(0);
const FormFieldData& field =
*credit_card_form->field(kCreditCardFieldIndexInForm);
std::u16string cvc = u"123";

EXPECT_CALL(*autofill_manager(),
Expand Down Expand Up @@ -1116,7 +1120,8 @@ TEST_F(FastCheckoutClientImplTest,
TryToFillForms_LocalCreditCard_ImmediatelyFillsCreditCardForm) {
autofill::FormStructure* credit_card_form =
AddFormToAutofillManagerCache(SetUpCreditCardForm());
const FormFieldData& field = *credit_card_form->field(0);
const FormFieldData& field =
*credit_card_form->field(kCreditCardFieldIndexInForm);

EXPECT_CALL(
*autofill_manager(),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -180,8 +180,8 @@ class TouchToFillDelegateAndroidImplUnitTest : public testing::Test {
ON_CALL(*fast_checkout_client, IsNotShownYet)
.WillByDefault(testing::Return(true));

test::CreateTestCreditCardFormData(&form_, /*is_https=*/true,
/*use_month_type=*/false);
form_ = test::CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/false);
form_.fields[0].is_focusable = true;
}

Expand Down Expand Up @@ -225,11 +225,10 @@ TEST_F(TouchToFillDelegateAndroidImplUnitTest, TryToShowTouchToFillSucceeds) {

TEST_F(TouchToFillDelegateAndroidImplUnitTest,
TryToShowTouchToFillFailsIfNotCreditCardField) {
{
FormFieldData field;
test::CreateTestFormField("Arbitrary", "arbitrary", "", "text", &field);
form_.fields.insert(form_.fields.begin(), field);
}
form_.fields.insert(
form_.fields.begin(),
test::CreateTestFormField("Arbitrary", "arbitrary", "", "text"));

ASSERT_FALSE(touch_to_fill_delegate_->IsShowingTouchToFill());

TryToShowTouchToFill(/*expected_success=*/false);
Expand Down Expand Up @@ -299,8 +298,8 @@ TEST_F(TouchToFillDelegateAndroidImplUnitTest,
TEST_F(TouchToFillDelegateAndroidImplUnitTest,
TryToShowTouchToFillFailsIfFormIsNotSecure) {
// Simulate non-secure form.
test::CreateTestCreditCardFormData(&form_, /*is_https=*/false,
/*use_month_type=*/false);
form_ = test::CreateTestCreditCardFormData(/*is_https=*/false,
/*use_month_type=*/false);

ASSERT_FALSE(touch_to_fill_delegate_->IsShowingTouchToFill());

Expand Down
3 changes: 1 addition & 2 deletions components/autofill/content/browser/form_forest_unittest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,7 @@ auto Equals(const FormForest& exp) {
// The basic test form is a credit card form with six fields: first name, last
// name, number, month, year, CVC.
FormData CreateForm() {
FormData form;
test::CreateTestCreditCardFormData(&form, true, false, true);
FormData form = test::CreateTestCreditCardFormData(true, false, true);
CHECK_EQ(form.fields.size(), 6u);
return form;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@

#include <memory>

#include "base/ranges/algorithm.h"
#include "base/test/scoped_feature_list.h"
#include "base/test/task_environment.h"
#include "components/autofill/core/browser/autofill_test_utils.h"
Expand All @@ -28,6 +29,7 @@

namespace autofill {

using test::CreateTestCreditCardFormData;
using test::CreateTestIbanFormData;

class MockOptimizationGuideDecider
Expand Down Expand Up @@ -121,10 +123,9 @@ TEST_F(AutofillOptimizationGuideTest, CreditCardFormFound_VcnMerchantOptOut) {
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);

Expand All @@ -144,10 +145,9 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);
test_api(*personal_data_manager_->GetCreditCards()[0])
Expand All @@ -167,10 +167,9 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);
personal_data_manager_->GetCreditCards()[0]->set_virtual_card_enrollment_type(
Expand All @@ -190,10 +189,9 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);
personal_data_manager_->GetCreditCards()[0]
Expand All @@ -214,10 +212,9 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitAndDisableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);

Expand All @@ -235,10 +232,9 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitAndEnableFeature(
features::kAutofillEnableMerchantOptOutClientSideUrlFiltering);
FormData form_data;
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/true);
FormStructure form_structure{form_data};
FormStructure form_structure{
CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/true)};
form_structure.DetermineHeuristicTypes(
/*form_interactions_ukm_logger=*/nullptr, /*log_manager=*/nullptr);
personal_data_manager_.reset();
Expand Down Expand Up @@ -276,13 +272,14 @@ TEST_F(AutofillOptimizationGuideTest,
base::test::ScopedFeatureList feature_list;
feature_list.InitWithFeatures(
{features::kAutofillEnableMerchantOptOutClientSideUrlFiltering}, {});
FormData form_data = CreateTestIbanFormData();
test::CreateTestCreditCardFormData(&form_data, /*is_https=*/true,
/*use_month_type=*/false);
FormData form_data = CreateTestCreditCardFormData(/*is_https=*/true,
/*use_month_type=*/false);
base::ranges::move(CreateTestIbanFormData().fields,
std::back_inserter(form_data.fields));
FormStructure form_structure{form_data};
const std::vector<ServerFieldType> field_types = {
IBAN_VALUE, CREDIT_CARD_NAME_FIRST, CREDIT_CARD_NAME_LAST,
CREDIT_CARD_NUMBER, CREDIT_CARD_EXP_MONTH, CREDIT_CARD_EXP_4_DIGIT_YEAR};
CREDIT_CARD_NAME_FIRST, CREDIT_CARD_NAME_LAST, CREDIT_CARD_NUMBER,
CREDIT_CARD_EXP_MONTH, CREDIT_CARD_EXP_4_DIGIT_YEAR, IBAN_VALUE};
test_api(form_structure).SetFieldTypes(field_types, field_types);

EXPECT_CALL(*decider_,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3165,11 +3165,10 @@ TEST_F(AutofillMetricsTest, CreditCardGetRealPanDuration_BadServerResponse) {
/*include_full_server_credit_card=*/false,
/*masked_card_is_enrolled_for_virtual_card=*/false);
// Set up our form data.
FormData form;
test::CreateTestCreditCardFormData(&form,
/*is_https=*/true,
/*use_month_type=*/true,
/*split_names=*/false);
FormData form = test::CreateTestCreditCardFormData(
/*is_https=*/true,
/*use_month_type=*/true,
/*split_names=*/false);
std::vector<ServerFieldType> field_types{
CREDIT_CARD_NAME_FULL, CREDIT_CARD_NUMBER,
CREDIT_CARD_EXP_DATE_2_DIGIT_YEAR, CREDIT_CARD_VERIFICATION_CODE};
Expand Down

0 comments on commit 03a558d

Please sign in to comment.