Commit f5d42a0f authored by Sujie Zhu's avatar Sujie Zhu Committed by Commit Bot

[AF][Nickname] Update settings page display text for nickname.

Replace NetworkAndLastFourDigits() with
NicknameOrNetworkAndLastFourDigits() in CreditCard::LabelPiece().
The LabelPiece is used to set CreditCardEntry.metadata.summaryLabel
value for the creditCardLabel (display text) in settings page.

Changes of the creditCardLabel in the settings page's credit card list:
Before: "Network  ****2345"
After: "Nickname  ****2345"

More details (googlers only):
https://docs.google.com/document/d/1SfrBduc3gJrouT4zLmQHWtUPtcE-9JbkBGLHYgFLTFc/edit?ts=5e50549a#bookmark=id.g3yosdii8zfn

Bug: 1059087
Change-Id: Iad062d727f0f0a88fd6e61d0903faf6864b8d889
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2148274
Commit-Queue: Sujie Zhu <sujiezhu@google.com>
Reviewed-by: default avatarJared Saul <jsaul@google.com>
Reviewed-by: default avatarDominic Battré <battre@chromium.org>
Reviewed-by: default avatarSiyu An <siyua@chromium.org>
Cr-Commit-Position: refs/heads/master@{#758990}
parent e4b2ebd3
......@@ -759,7 +759,7 @@ const std::pair<base::string16, base::string16> CreditCard::LabelPieces()
if (number().empty())
return std::make_pair(name_on_card_, base::string16());
base::string16 obfuscated_cc_number = NetworkAndLastFourDigits();
base::string16 obfuscated_cc_number = NicknameOrNetworkAndLastFourDigits();
// No expiration date set.
if (!expiration_month_ || !expiration_year_)
return std::make_pair(obfuscated_cc_number, base::string16());
......
......@@ -236,7 +236,8 @@ class CreditCard : public AutofillDataModel {
// Various display functions.
// Card preview summary, for example: "Visa - ****1234", ", 01/2020".
// Card preview summary, for example: "Nickname/Network - ****1234",
// ", 01/2020".
const std::pair<base::string16, base::string16> LabelPieces() const;
// Like LabelPieces, but appends the two pieces together.
const base::string16 Label() const;
......
......@@ -92,6 +92,12 @@ TEST(CreditCardTest, GetObfuscatedStringForCardDigits) {
// of different possible summary strings. Variations occur based on the
// existence of credit card number, month, and year fields.
TEST(CreditCardTest, PreviewSummaryAndNetworkAndLastFourDigitsStrings) {
base::test::ScopedFeatureList scoped_feature_list;
base::string16 valid_nickname = ASCIIToUTF16("My Visa Card");
// Enable the flag.
scoped_feature_list.InitAndEnableFeature(
features::kAutofillEnableSurfacingServerCardNickname);
// Case 0: empty credit card.
CreditCard credit_card0(base::GenerateGUID(), "https://www.example.com/");
base::string16 summary0 = credit_card0.Label();
......@@ -142,7 +148,7 @@ TEST(CreditCardTest, PreviewSummaryAndNetworkAndLastFourDigitsStrings) {
test::ObfuscatedCardDigitsAsUTF8("5100")),
obfuscated3);
// Case 4: Have everything.
// Case 4: Have everything except nickname.
CreditCard credit_card4(base::GenerateGUID(), "https://www.example.com/");
test::SetCreditCardInfo(&credit_card4, "John Dillinger",
"5105 1051 0510 5100", "01", "2010", "1");
......@@ -169,6 +175,33 @@ TEST(CreditCardTest, PreviewSummaryAndNetworkAndLastFourDigitsStrings) {
EXPECT_EQ(UTF8ToUTF16(std::string("Card ") +
test::ObfuscatedCardDigitsAsUTF8("5100")),
obfuscated5);
// Case 6: Have everything including nickname.
CreditCard credit_card6(base::GenerateGUID(), "https://www.example.com/");
test::SetCreditCardInfo(&credit_card6, "John Dillinger",
"5105 1051 0510 5100", "01", "2010", "1");
credit_card6.SetNickname(valid_nickname);
base::string16 summary6 = credit_card6.Label();
EXPECT_EQ(
valid_nickname +
UTF8ToUTF16(std::string(" ") +
test::ObfuscatedCardDigitsAsUTF8("5100") + ", 01/2010"),
summary6);
// Case 7: Have everything including nickname but flag is off.
// Reset and disable the feature flag.
scoped_feature_list.Reset();
scoped_feature_list.InitAndDisableFeature(
features::kAutofillEnableSurfacingServerCardNickname);
CreditCard credit_card7(base::GenerateGUID(), "https://www.example.com/");
test::SetCreditCardInfo(&credit_card7, "John Dillinger",
"5105 1051 0510 5100" /* Mastercard */, "01", "2010",
"1");
credit_card7.SetNickname(valid_nickname);
base::string16 summary7 = credit_card7.Label();
EXPECT_EQ(UTF8ToUTF16(std::string("Mastercard ") +
test::ObfuscatedCardDigitsAsUTF8("5100") + ", 01/2010"),
summary7);
}
TEST(CreditCardTest, NicknameAndLastFourDigitsStrings) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment