Search in sources :

Example 21 with CreditCard

use of com.fitpay.android.api.models.card.CreditCard in project fitpay-android-sdk by fitpay.

the class CommitTest2 method testCanGetAllCommits.

@Test
public void testCanGetAllCommits() throws Exception {
    Device device = getTestDevice();
    Device createdDevice = createDevice(user, device);
    assertNotNull("created device", createdDevice);
    Collections.DeviceCollection devices = getDevices(user);
    assertNotNull("devices collection should not be null", devices);
    assertEquals("should have one device", 1, devices.getTotalResults());
    String pan = "9999504454545450";
    CreditCard creditCard = getTestCreditCard(pan);
    CreditCard createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    createdCard = acceptTerms(createdCard);
    waitForActivation(createdCard);
    pan = "9999504454545451";
    creditCard = getTestCreditCard(pan);
    createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    acceptTerms(createdCard);
    Collections.CommitsCollection commits = getCommits(createdDevice, null);
    assertNotNull("commits collection", commits);
    int totalResults = commits.getTotalResults();
    assertTrue("number of commits should be 2 or more.  Got: " + commits.getTotalResults(), commits.getTotalResults() >= 2);
    commits = getAllCommits(createdDevice, null);
    assertNotNull("allCommits collection", commits);
    assertEquals("number of allCommits", totalResults, commits.getTotalResults());
    for (Commit commit : commits.getResults()) {
        Collections.CommitsCollection lastCommits = getAllCommits(createdDevice, commit.getCommitId());
        assertEquals("number of commits with lastId", --totalResults, lastCommits.getTotalResults());
    }
}
Also used : Commit(com.fitpay.android.api.models.device.Commit) Device(com.fitpay.android.api.models.device.Device) Collections(com.fitpay.android.api.models.collection.Collections) CreditCard(com.fitpay.android.api.models.card.CreditCard) Test(org.junit.Test)

Example 22 with CreditCard

use of com.fitpay.android.api.models.card.CreditCard in project fitpay-android-sdk by fitpay.

the class CommitTest2 method testCanConfirmCommits.

@Test
public void testCanConfirmCommits() throws Exception {
    Device device = getTestDevice();
    Device createdDevice = createDevice(user, device);
    assertNotNull("created device", createdDevice);
    Collections.DeviceCollection devices = getDevices(user);
    assertNotNull("devices collection should not be null", devices);
    assertEquals("should have one device", 1, devices.getTotalResults());
    String pan = "9999504454545450";
    CreditCard creditCard = getTestCreditCard(pan);
    CreditCard createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    createdCard = acceptTerms(createdCard);
    waitForActivation(createdCard);
    pan = "9999504454545451";
    creditCard = getTestCreditCard(pan);
    createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    acceptTerms(createdCard);
    Collections.CommitsCollection commits = getCommits(createdDevice, null);
    assertNotNull("commits collection", commits);
    assertTrue("number of commits should be 2 or more.  Got: " + commits.getTotalResults(), commits.getTotalResults() >= 2);
    for (Commit commit : commits.getResults()) {
        final CountDownLatch latch = new CountDownLatch(1);
        if (commit.canConfirmCommit()) {
            CommitConfirm confirm = new CommitConfirm(ResponseState.SUCCESS);
            commit.confirm(confirm, new ApiCallback<Void>() {

                @Override
                public void onSuccess(Void result) {
                    latch.countDown();
                }

                @Override
                public void onFailure(@ResultCode.Code int errorCode, String errorMessage) {
                    fail("commit confirm failed");
                }
            });
        } else {
        // TODO: uncomment out once the paltform supports this feature fully
        // if (!commit.getCommitType().equals(CommitTypes.APDU_PACKAGE)) {
        // fail("expected confirm link on commit: " + commit);
        // }
        }
        latch.await(5000, TimeUnit.MILLISECONDS);
    }
}
Also used : Device(com.fitpay.android.api.models.device.Device) CountDownLatch(java.util.concurrent.CountDownLatch) CreditCard(com.fitpay.android.api.models.card.CreditCard) Commit(com.fitpay.android.api.models.device.Commit) CommitConfirm(com.fitpay.android.api.models.device.CommitConfirm) Collections(com.fitpay.android.api.models.collection.Collections) Test(org.junit.Test)

Example 23 with CreditCard

use of com.fitpay.android.api.models.card.CreditCard in project fitpay-android-sdk by fitpay.

the class CommitTest2 method testCanGetLofOfCommits.

@Test
public void testCanGetLofOfCommits() throws Exception {
    Device device = getTestDevice();
    Device createdDevice = createDevice(user, device);
    assertNotNull("created device", createdDevice);
    Collections.DeviceCollection devices = getDevices(user);
    assertNotNull("devices collection should not be null", devices);
    assertEquals("should have one device", 1, devices.getTotalResults());
    CreditCard[] creditCardArray = new CreditCard[8];
    String panBase = "99995044545454";
    int count = 0;
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < 4; j++) {
            String pan = panBase + i + j;
            CreditCard creditCard = getTestCreditCard(pan);
            CreditCard createdCard = createCreditCard(user, creditCard);
            assertNotNull("card not created", createdCard);
            creditCardArray[count] = acceptTerms(createdCard);
            count++;
        }
    }
    for (int i = 0; i < 2; i++) {
        for (int j = 0; j < count; j++) {
            if (creditCardArray[j].canMakeDefault()) {
                makeDefaultCard(creditCardArray[j]);
            }
        }
    }
    // wait for all commits
    final int correctResult = 39;
    int totalResults = 0;
    for (int i = 0; i < 3; i++) {
        Collections.CommitsCollection commits = getAllCommits(createdDevice, null);
        assertNotNull(commits);
        assertTrue("number of commits should be 10 or more.  Got: " + commits.getTotalResults(), commits.getTotalResults() >= 10);
        totalResults = commits.getTotalResults();
    }
    assertEquals("number of commits should be 39.  Got: " + totalResults, totalResults, correctResult);
}
Also used : Device(com.fitpay.android.api.models.device.Device) Collections(com.fitpay.android.api.models.collection.Collections) CreditCard(com.fitpay.android.api.models.card.CreditCard) Test(org.junit.Test)

Example 24 with CreditCard

use of com.fitpay.android.api.models.card.CreditCard in project fitpay-android-sdk by fitpay.

the class CommitTest2 method testCanGetCommitsAfter.

@Test
public void testCanGetCommitsAfter() throws Exception {
    Device device = getTestDevice();
    Device createdDevice = createDevice(user, device);
    assertNotNull("created device", createdDevice);
    Collections.DeviceCollection devices = getDevices(user);
    assertNotNull("devices collection should not be null", devices);
    assertEquals("should have one device", 1, devices.getTotalResults());
    String pan = "9999504454545450";
    CreditCard creditCard = getTestCreditCard(pan);
    CreditCard createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    createdCard = acceptTerms(createdCard);
    waitForActivation(createdCard);
    pan = "9999504454545451";
    creditCard = getTestCreditCard(pan);
    createdCard = createCreditCard(user, creditCard);
    assertNotNull("card not created", createdCard);
    acceptTerms(createdCard);
    Collections.CommitsCollection commits = getCommits(createdDevice, null);
    assertNotNull("commits collection", commits);
    int totalResults = commits.getTotalResults();
    assertTrue("number of commits should be 2 or more.  Got: " + commits.getTotalResults(), commits.getTotalResults() >= 2);
    for (Commit commit : commits.getResults()) {
        Collections.CommitsCollection lastCommits = getCommits(createdDevice, commit.getCommitId());
        assertEquals("number of commits with lastId", --totalResults, lastCommits.getTotalResults());
    }
}
Also used : Commit(com.fitpay.android.api.models.device.Commit) Device(com.fitpay.android.api.models.device.Device) Collections(com.fitpay.android.api.models.collection.Collections) CreditCard(com.fitpay.android.api.models.card.CreditCard) Test(org.junit.Test)

Example 25 with CreditCard

use of com.fitpay.android.api.models.card.CreditCard in project fitpay-android-sdk by fitpay.

the class TestActions method createCreditCard.

protected CreditCard createCreditCard(User user, CreditCard creditCard) throws Exception {
    final CountDownLatch latch = new CountDownLatch(1);
    ResultProvidingCallback<CreditCard> callback = new ResultProvidingCallback<>(latch);
    user.createCreditCard(creditCard, callback);
    latch.await(TIMEOUT, TimeUnit.SECONDS);
    return callback.getResult();
}
Also used : ResultProvidingCallback(com.fitpay.android.api.callbacks.ResultProvidingCallback) CountDownLatch(java.util.concurrent.CountDownLatch) CreditCard(com.fitpay.android.api.models.card.CreditCard)

Aggregations

CreditCard (com.fitpay.android.api.models.card.CreditCard)39 Test (org.junit.Test)21 CountDownLatch (java.util.concurrent.CountDownLatch)20 Device (com.fitpay.android.api.models.device.Device)19 Collections (com.fitpay.android.api.models.collection.Collections)18 ResultProvidingCallback (com.fitpay.android.api.callbacks.ResultProvidingCallback)8 ArrayList (java.util.ArrayList)5 Address (com.fitpay.android.api.models.card.Address)3 Reason (com.fitpay.android.api.models.card.Reason)3 Commit (com.fitpay.android.api.models.device.Commit)3 UserStreamEvent (com.fitpay.android.api.models.UserStreamEvent)2 UserEventStreamListener (com.fitpay.android.api.sse.UserEventStreamListener)2 MockPaymentDeviceConnector (com.fitpay.android.paymentdevice.impl.mock.MockPaymentDeviceConnector)2 SyncRequest (com.fitpay.android.paymentdevice.models.SyncRequest)2 Activity (android.app.Activity)1 Context (android.content.Context)1 SharedPreferences (android.content.SharedPreferences)1 Image (android.media.Image)1 ApiManager (com.fitpay.android.api.ApiManager)1 ApiCallback (com.fitpay.android.api.callbacks.ApiCallback)1