Index: chrome/android/junit/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderTest.java |
diff --git a/chrome/android/junit/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderTest.java b/chrome/android/junit/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderTest.java |
index bf68431017cf1e2b9d9de54ffad9a22f76207a1e..ab6f279deae2db4815e9849f2492078b0c367b04 100644 |
--- a/chrome/android/junit/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderTest.java |
+++ b/chrome/android/junit/src/org/chromium/chrome/browser/payments/AndroidPaymentAppFinderTest.java |
@@ -38,6 +38,26 @@ import java.util.Set; |
public class AndroidPaymentAppFinderTest { |
public AndroidPaymentAppFinderTest() {} |
+ /** |
+ * Argument matcher that matches Intents using |filterEquals| method. |
+ */ |
+ private static class IntentArgumentMatcher implements ArgumentMatcher<Intent> { |
+ |
+ private Intent mIntent; |
nyquist
2017/03/16 15:29:50
Nit: final
mikecase (-- gone --)
2017/03/16 16:30:40
Done
|
+ |
+ public IntentArgumentMatcher(Intent intent) { |
+ this.mIntent = intent; |
nyquist
2017/03/16 15:29:51
Nit: Remove |this|
mikecase (-- gone --)
2017/03/16 16:30:40
Done.
Also added @Override to matches() and equal
|
+ } |
+ |
+ public boolean matches(Intent other) { |
+ return mIntent.filterEquals(other); |
+ } |
+ |
+ public String toString() { |
+ return mIntent.toString(); |
+ } |
+ } |
+ |
@Test |
public void testNoValidPaymentMethodNames() { |
Set<String> methodNames = new HashSet<>(); |
@@ -60,7 +80,8 @@ public class AndroidPaymentAppFinderTest { |
public void testQueryBasicCardsWithoutApps() { |
PackageManagerDelegate packageManagerDelegate = Mockito.mock(PackageManagerDelegate.class); |
Mockito.when(packageManagerDelegate.getActivitiesThatCanRespondToIntent( |
- new Intent(AndroidPaymentAppFinder.ACTION_PAY_BASIC_CARD))) |
+ ArgumentMatchers.argThat(new IntentArgumentMatcher( |
+ new Intent(AndroidPaymentAppFinder.ACTION_PAY_BASIC_CARD))))) |
.thenReturn(new ArrayList<ResolveInfo>()); |
Set<String> methodNames = new HashSet<>(); |
methodNames.add(AndroidPaymentAppFinder.BASIC_CARD_PAYMENT_METHOD); |
@@ -92,10 +113,12 @@ public class AndroidPaymentAppFinderTest { |
Mockito.when(packageManagerDelegate.getAppLabel(Mockito.any(ResolveInfo.class))) |
.thenReturn("A non-empty label"); |
Mockito.when(packageManagerDelegate.getActivitiesThatCanRespondToIntent( |
- new Intent(AndroidPaymentAppFinder.ACTION_PAY_BASIC_CARD))) |
+ ArgumentMatchers.argThat(new IntentArgumentMatcher( |
+ new Intent(AndroidPaymentAppFinder.ACTION_PAY_BASIC_CARD))))) |
.thenReturn(activities); |
Mockito.when(packageManagerDelegate.getServicesThatCanRespondToIntent( |
- new Intent(AndroidPaymentAppFinder.ACTION_IS_READY_TO_PAY))) |
+ ArgumentMatchers.argThat(new IntentArgumentMatcher( |
+ new Intent(AndroidPaymentAppFinder.ACTION_IS_READY_TO_PAY))))) |
.thenReturn(new ArrayList<ResolveInfo>()); |
Set<String> methodNames = new HashSet<>(); |
methodNames.add(AndroidPaymentAppFinder.BASIC_CARD_PAYMENT_METHOD); |
@@ -145,7 +168,8 @@ public class AndroidPaymentAppFinderTest { |
PackageManagerDelegate packageManagerDelegate = Mockito.mock(PackageManagerDelegate.class); |
Mockito.when(packageManagerDelegate.getAppLabel(Mockito.any(ResolveInfo.class))) |
.thenReturn("A non-empty label"); |
- Mockito.when(packageManagerDelegate.getActivitiesThatCanRespondToIntent(bobPayIntent)) |
+ Mockito.when(packageManagerDelegate.getActivitiesThatCanRespondToIntent( |
+ ArgumentMatchers.argThat(new IntentArgumentMatcher(bobPayIntent)))) |
.thenReturn(activities); |
List<ResolveInfo> services = new ArrayList<>(); |
@@ -155,7 +179,8 @@ public class AndroidPaymentAppFinderTest { |
isBobPayReadyToPay.serviceInfo.name = "com.bobpay.app.IsReadyToWebPay"; |
services.add(isBobPayReadyToPay); |
Intent isReadyToPayIntent = new Intent(AndroidPaymentAppFinder.ACTION_IS_READY_TO_PAY); |
- Mockito.when(packageManagerDelegate.getServicesThatCanRespondToIntent(isReadyToPayIntent)) |
+ Mockito.when(packageManagerDelegate.getServicesThatCanRespondToIntent( |
+ ArgumentMatchers.argThat(new IntentArgumentMatcher(isReadyToPayIntent)))) |
.thenReturn(services); |
PackageInfo bobPayPackageInfo = new PackageInfo(); |