| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
bots are unhappy
std::ranges::move(GetCreditCardFooterSuggestions(
client, /*should_show_bnpl_suggestion=*/false,
ShouldShowScanCreditCard(
form_structure, autofill_trigger_field, client),
trigger_field.is_autofilled(), display_gpay_logo,
amount_extraction_status),
std::back_inserter(suggestions));nit: Use `base::Extend()`?
// Complete credit card form (passes FormStructure::IsCompleteCreditCardForm)
test::FormDescription form_description = {
.fields = {
{.role = FieldType::CREDIT_CARD_NUMBER, .value = u"411"},
{.role = FieldType::CREDIT_CARD_EXP_MONTH},
{.role = FieldType::CREDIT_CARD_EXP_4_DIGIT_YEAR},
{.role = FieldType::CREDIT_CARD_VERIFICATION_CODE},
{.role = FieldType::CREDIT_CARD_NAME_FULL},
}};
FormData form = test::GetFormData(form_description);
FormStructure form_structure(form);
for (size_t i = 0; i < form_structure.field_count(); ++i) {
form_structure.field(i)->set_heuristic_type(
HeuristicSource::kRegexes, form_description.fields[i].role);
}Can you create a helper function `GetFormWithTypes()` that abstracts this?
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
Mikita Kuchynbots are unhappy
Should be cheered up by now (moved ShouldShowScanCreditCard tests from bam_unittests.cc to psg_unittests.cc)
std::ranges::move(GetCreditCardFooterSuggestions(
client, /*should_show_bnpl_suggestion=*/false,
ShouldShowScanCreditCard(
form_structure, autofill_trigger_field, client),
trigger_field.is_autofilled(), display_gpay_logo,
amount_extraction_status),
std::back_inserter(suggestions));nit: Use `base::Extend()`?
Cool, didn't know about that one
// Complete credit card form (passes FormStructure::IsCompleteCreditCardForm)
test::FormDescription form_description = {
.fields = {
{.role = FieldType::CREDIT_CARD_NUMBER, .value = u"411"},
{.role = FieldType::CREDIT_CARD_EXP_MONTH},
{.role = FieldType::CREDIT_CARD_EXP_4_DIGIT_YEAR},
{.role = FieldType::CREDIT_CARD_VERIFICATION_CODE},
{.role = FieldType::CREDIT_CARD_NAME_FULL},
}};
FormData form = test::GetFormData(form_description);
FormStructure form_structure(form);
for (size_t i = 0; i < form_structure.field_count(); ++i) {
form_structure.field(i)->set_heuristic_type(
HeuristicSource::kRegexes, form_description.fields[i].role);
}Can you create a helper function `GetFormWithTypes()` that abstracts this?
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
using ::std::make_unique;We don't usually add using statements for `std`, please remove.
form_structure->field(i)->set_heuristic_type(Why not just `SetTypeTo()`?
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
We don't usually add using statements for `std`, please remove.
Done
Why not just `SetTypeTo()`?
`psg.cc` works with `FieldType`, but `SetTypeTo()` works with `AutofillType`, so I defaulted to `set_heuristic_type()` to fill in the `FieldType`. I can see now that `SetTypeTo(AutofillType(FieldType))` is used throughout the codebase, so changed all occurences in tests to that.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
6 is the latest approved patch-set.
The change was submitted with unreviewed changes in the following files:
```
The name of the file: components/autofill/core/browser/suggestions/payments/payments_suggestion_generator_unittest.cc
Insertions: 20, Deletions: 20.
@@ -71,7 +71,6 @@
namespace {
using ::gfx::test::AreImagesEqual;
-using ::std::make_unique;
using ::testing::_;
using ::testing::AllOf;
using ::testing::ElementsAre;
@@ -300,8 +299,8 @@
FormData form = test::GetFormData(form_description);
auto form_structure = std::make_unique<FormStructure>(form);
for (size_t i = 0; i < form_structure->field_count(); ++i) {
- form_structure->field(i)->set_heuristic_type(
- HeuristicSource::kRegexes, form_description.fields[i].role);
+ form_structure->field(i)->SetTypeTo(
+ AutofillType(form_description.fields[i].role), std::nullopt);
}
AutofillField* trigger_autofill_field = form_structure->field(0);
@@ -4229,9 +4228,9 @@
FormData form;
FormFieldData trigger_field;
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes,
- FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
autofill_client(),
@@ -4273,8 +4272,9 @@
FormFieldData trigger_field;
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes, FieldType::CREDIT_CARD_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
@@ -4305,9 +4305,9 @@
FormData form;
FormFieldData trigger_field;
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes,
- FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
autofill_client(),
@@ -4325,9 +4325,9 @@
FormData form;
FormFieldData trigger_field;
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes,
- FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
autofill_client(),
@@ -4351,9 +4351,9 @@
FormData form;
FormFieldData trigger_field;
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes,
- FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
autofill_client(),
@@ -4387,9 +4387,9 @@
FormFieldData trigger_field;
trigger_field.set_origin(virtual_card_usage_data.merchant_origin());
AutofillField trigger_autofill_field(trigger_field);
- trigger_autofill_field.set_heuristic_type(
- HeuristicSource::kRegexes,
- FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE);
+ trigger_autofill_field.SetTypeTo(
+ AutofillType(FieldType::CREDIT_CARD_STANDALONE_VERIFICATION_CODE),
+ AutofillPredictionSource::kHeuristics);
std::vector<Suggestion> suggestions = GetSuggestionsForCreditCards(
form, FormStructure(form), trigger_field, trigger_autofill_field,
```
[CCSG-2] Move parameters calculation from BAM into CCSG
Move `should_show_scan_credit_card` and `is_complete_form` calculation
into `CreditCardSuggestionGenerator class, so the logic is incapsulated
inside of the class.
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |