package com.braintreegateway; import com.braintreegateway.util.NodeWrapper; import com.braintreegateway.util.NodeWrapperFactory; import com.braintreegateway.exceptions.NotFoundException; import org.junit.Test; import org.junit.Before; import static org.junit.Assert.*; public class PaymentMethodGatewayTest { private BraintreeGateway gateway; @Before public void createGateway() { this.gateway = new BraintreeGateway( Environment.DEVELOPMENT, "integration_merchant_id", "integration_public_key", "integration_private_key" ); } @Test public void parseResultReturnsUnknownPaymentMethodInElseCase() { String xml = "<monopoly-money><token>foo</token></monopoly-money>"; NodeWrapper response = NodeWrapperFactory.instance.create(xml); Result<? extends PaymentMethod> result = this.gateway.paymentMethod().parseResponse(response); assertEquals("foo", result.getTarget().getToken()); assertTrue(result.getTarget() instanceof UnknownPaymentMethod); } @Test(expected=NotFoundException.class) public void findHandlesNullPointer() { PaymentMethodGateway paymentMethodGateway = this.gateway.paymentMethod(); paymentMethodGateway.find(null); } }