Index: chrome/android/javatests/src/org/chromium/chrome/browser/payments/PaymentRequestPhoneTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/payments/PaymentRequestPhoneTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/payments/PaymentRequestPhoneTest.java |
index 6d1c9e47fd1a7bceea44d7c9b0767d97cb74e26c..94a8650aae38b23abb4fd9e0c1c711142bb42546 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/payments/PaymentRequestPhoneTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/payments/PaymentRequestPhoneTest.java |
@@ -33,6 +33,26 @@ public class PaymentRequestPhoneTest extends PaymentRequestTestBase { |
"340 Main St", "CA", "Los Angeles", "", "90291", "", "US", "555-555-5555", |
"jon.doe@google.com", "en-US")); |
+ // Add the same profile but with a different address. |
+ helper.setProfile(new AutofillProfile("", "https://example.com", true, "", "Google", |
+ "999 Main St", "CA", "Los Angeles", "", "90291", "", "US", "555-555-5555", |
+ "jon.doe@google.com", "en-US")); |
+ |
+ // Add the same profile but without a phone number. |
+ helper.setProfile(new AutofillProfile("", "https://example.com", true, "Jon Doe", "Google", |
+ "340 Main St", "CA", "Los Angeles", "", "90291", "", "US", "" /* phone_number */, |
+ "jon.doe@google.com", "en-US")); |
+ |
+ // Add the same profile but without an email. |
+ helper.setProfile(new AutofillProfile("", "https://example.com", true, "Jon Doe", "Google", |
+ "340 Main St", "CA", "Los Angeles", "", "90291", "", "US", "555-555-5555", |
+ "" /* emailAddress */, "en-US")); |
+ |
+ // Add the same profile but without a name. |
+ helper.setProfile(new AutofillProfile("" /* name */, "https://example.com", true, "", |
+ "Google", "340 Main St", "CA", "Los Angeles", "", "90291", "", "US", "555-555-5555", |
+ "jon.doe@google.com", "en-US")); |
+ |
installPaymentApp(HAVE_INSTRUMENTS, IMMEDIATE_RESPONSE); |
} |
@@ -76,6 +96,19 @@ public class PaymentRequestPhoneTest extends PaymentRequestTestBase { |
} |
/** |
+ * Makes sure that suggestions that are equal to or subsets of other suggestions are not shown |
+ * to the user. |
+ */ |
+ @MediumTest |
+ @Feature({"Payments"}) |
+ public void testSuggestionsDeduped() |
+ throws InterruptedException, ExecutionException, TimeoutException { |
+ triggerUIAndWait(mReadyToPay); |
+ clickInContactInfoAndWait(R.id.payments_section, mReadyForInput); |
+ assertEquals(1, getNumberOfContactDetailSuggestions()); |
+ } |
+ |
+ /** |
* Test that starting a payment request that requires only the user's phone number results in |
* the appropriate metric being logged in the PaymentRequest.RequestedInformation histogram. |
*/ |