Search in sources :

Example 1 with TokenizationParametersListener

use of com.braintreepayments.api.interfaces.TokenizationParametersListener in project braintree_android by braintree.

the class AndroidPayTest method getTokenizationParameters_returnsCorrectParametersInCallback.

@Test(timeout = 5000)
public void getTokenizationParameters_returnsCorrectParametersInCallback() throws Exception {
    String config = mBaseConfiguration.androidPay(mBaseConfiguration.androidPay().supportedNetworks(new String[] { "visa", "mastercard", "amex", "discover" })).build();
    final Configuration configuration = Configuration.fromJson(config);
    BraintreeFragment fragment = getFragment(mActivityTestRule.getActivity(), TOKENIZATION_KEY, config);
    AndroidPay.getTokenizationParameters(fragment, new TokenizationParametersListener() {

        @Override
        public void onResult(PaymentMethodTokenizationParameters parameters, Collection<Integer> allowedCardNetworks) {
            assertEquals("braintree", parameters.getParameters().getString("gateway"));
            assertEquals(configuration.getMerchantId(), parameters.getParameters().getString("braintree:merchantId"));
            assertEquals(configuration.getAndroidPay().getGoogleAuthorizationFingerprint(), parameters.getParameters().getString("braintree:authorizationFingerprint"));
            assertEquals("v1", parameters.getParameters().getString("braintree:apiVersion"));
            assertEquals(BuildConfig.VERSION_NAME, parameters.getParameters().getString("braintree:sdkVersion"));
            try {
                JSONObject metadata = new JSONObject(parameters.getParameters().getString("braintree:metadata"));
                assertNotNull(metadata);
                assertEquals(BuildConfig.VERSION_NAME, metadata.getString("version"));
                assertNotNull(metadata.getString("sessionId"));
                assertEquals("custom", metadata.getString("integration"));
                assertEquals("android", metadata.get("platform"));
            } catch (JSONException e) {
                fail("Failed to unpack json from tokenization parameters: " + e.getMessage());
            }
            assertEquals(4, allowedCardNetworks.size());
            assertTrue(allowedCardNetworks.contains(CardNetwork.VISA));
            assertTrue(allowedCardNetworks.contains(CardNetwork.MASTERCARD));
            assertTrue(allowedCardNetworks.contains(CardNetwork.AMEX));
            assertTrue(allowedCardNetworks.contains(CardNetwork.DISCOVER));
            mLatch.countDown();
        }
    });
    mLatch.await();
}
Also used : BraintreeFragmentTestUtils.getMockFragmentWithConfiguration(com.braintreepayments.api.BraintreeFragmentTestUtils.getMockFragmentWithConfiguration) Configuration(com.braintreepayments.api.models.Configuration) JSONObject(org.json.JSONObject) PaymentMethodTokenizationParameters(com.google.android.gms.wallet.PaymentMethodTokenizationParameters) JSONException(org.json.JSONException) TokenizationParametersListener(com.braintreepayments.api.interfaces.TokenizationParametersListener) Test(org.junit.Test)

Example 2 with TokenizationParametersListener

use of com.braintreepayments.api.interfaces.TokenizationParametersListener in project braintree_android by braintree.

the class GooglePaymentTest method getTokenizationParameters_returnsCorrectParametersInCallback.

@Test(timeout = 5000)
public void getTokenizationParameters_returnsCorrectParametersInCallback() throws Exception {
    String config = mBaseConfiguration.androidPay(mBaseConfiguration.androidPay().supportedNetworks(new String[] { "visa", "mastercard", "amex", "discover" })).build();
    final Configuration configuration = Configuration.fromJson(config);
    BraintreeFragment fragment = getFragment(mActivityTestRule.getActivity(), TOKENIZATION_KEY, config);
    GooglePayment.getTokenizationParameters(fragment, new TokenizationParametersListener() {

        @Override
        public void onResult(PaymentMethodTokenizationParameters parameters, Collection<Integer> allowedCardNetworks) {
            assertEquals("braintree", parameters.getParameters().getString("gateway"));
            assertEquals(configuration.getMerchantId(), parameters.getParameters().getString("braintree:merchantId"));
            assertEquals(configuration.getAndroidPay().getGoogleAuthorizationFingerprint(), parameters.getParameters().getString("braintree:authorizationFingerprint"));
            assertEquals("v1", parameters.getParameters().getString("braintree:apiVersion"));
            assertEquals(BuildConfig.VERSION_NAME, parameters.getParameters().getString("braintree:sdkVersion"));
            try {
                JSONObject metadata = new JSONObject(parameters.getParameters().getString("braintree:metadata"));
                assertNotNull(metadata);
                assertEquals(BuildConfig.VERSION_NAME, metadata.getString("version"));
                assertNotNull(metadata.getString("sessionId"));
                assertEquals("custom", metadata.getString("integration"));
                assertEquals("android", metadata.get("platform"));
            } catch (JSONException e) {
                fail("Failed to unpack json from tokenization parameters: " + e.getMessage());
            }
            assertEquals(4, allowedCardNetworks.size());
            assertTrue(allowedCardNetworks.contains(CardNetwork.VISA));
            assertTrue(allowedCardNetworks.contains(CardNetwork.MASTERCARD));
            assertTrue(allowedCardNetworks.contains(CardNetwork.AMEX));
            assertTrue(allowedCardNetworks.contains(CardNetwork.DISCOVER));
            mLatch.countDown();
        }
    });
    mLatch.await();
}
Also used : BraintreeFragmentTestUtils.getFragmentWithConfiguration(com.braintreepayments.api.BraintreeFragmentTestUtils.getFragmentWithConfiguration) BraintreeFragmentTestUtils.getMockFragmentWithConfiguration(com.braintreepayments.api.BraintreeFragmentTestUtils.getMockFragmentWithConfiguration) Configuration(com.braintreepayments.api.models.Configuration) JSONObject(org.json.JSONObject) PaymentMethodTokenizationParameters(com.google.android.gms.wallet.PaymentMethodTokenizationParameters) JSONException(org.json.JSONException) TokenizationParametersListener(com.braintreepayments.api.interfaces.TokenizationParametersListener) Test(org.junit.Test)

Aggregations

BraintreeFragmentTestUtils.getMockFragmentWithConfiguration (com.braintreepayments.api.BraintreeFragmentTestUtils.getMockFragmentWithConfiguration)2 TokenizationParametersListener (com.braintreepayments.api.interfaces.TokenizationParametersListener)2 Configuration (com.braintreepayments.api.models.Configuration)2 PaymentMethodTokenizationParameters (com.google.android.gms.wallet.PaymentMethodTokenizationParameters)2 JSONException (org.json.JSONException)2 JSONObject (org.json.JSONObject)2 Test (org.junit.Test)2 BraintreeFragmentTestUtils.getFragmentWithConfiguration (com.braintreepayments.api.BraintreeFragmentTestUtils.getFragmentWithConfiguration)1