package com.braintreegateway.integrationtest; import com.braintreegateway.BraintreeGateway; import com.braintreegateway.Discount; import com.braintreegateway.Environment; import com.braintreegateway.util.Http; import org.junit.Before; import org.junit.Test; import java.math.BigDecimal; import java.util.List; import java.util.Random; import static org.junit.Assert.assertEquals; public class DiscountIT extends IntegrationTest { private Http http; @Before public void createHttp() { http = new Http(this.gateway.getConfiguration()); } @Test public void returnsAllDiscounts() { String discountId = "a_discount_id" + String.valueOf(new Random().nextInt()); FakeModificationRequest discountRequest = new FakeModificationRequest() .amount(new BigDecimal("100.00")) .description("java test discount description") .id(discountId) .kind("discount") .name("java test discount name") .neverExpires(false) .numberOfBillingCycles(12); http.post(gateway.getConfiguration().getMerchantPath() + "/modifications/create_modification_for_tests", discountRequest); List<Discount> discounts = gateway.discount().all(); Discount actualDiscount = null; for (Discount discount : discounts) { if (discount.getId().equals(discountId)) { actualDiscount = discount; break; } } assertEquals(new BigDecimal("100.00"), actualDiscount.getAmount()); assertEquals("java test discount description", actualDiscount.getDescription()); assertEquals("discount", actualDiscount.getKind()); assertEquals("java test discount name", actualDiscount.getName()); assertEquals(false, actualDiscount.neverExpires()); assertEquals(new Integer("12"), actualDiscount.getNumberOfBillingCycles()); } }