public void AuthorizationGetTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var pay = PaymentTest.CreatePaymentAuthorization(apiContext); this.RecordConnectionDetails(); Assert.IsNotNull(pay); Assert.IsNotNull(pay.transactions); Assert.IsTrue(pay.transactions.Count > 0); var transaction = pay.transactions[0]; Assert.IsNotNull(transaction.related_resources); Assert.IsTrue(transaction.related_resources.Count > 0); var resource = transaction.related_resources[0]; Assert.IsNotNull(resource.authorization); var authorizationId = resource.authorization.id; var authorize = Authorization.Get(apiContext, authorizationId); this.RecordConnectionDetails(); Assert.AreEqual(authorizationId, authorize.id); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }
public void RefundIdTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var pay = PaymentTest.CreatePaymentAuthorization(apiContext); this.RecordConnectionDetails(); Assert.IsNotNull(pay); Assert.IsNotNull(pay.transactions); Assert.IsTrue(pay.transactions.Count > 0); var transaction = pay.transactions[0]; Assert.IsNotNull(transaction.related_resources); Assert.IsTrue(transaction.related_resources.Count > 0); var resource = transaction.related_resources[0]; Assert.IsNotNull(resource.authorization); var authorization = Authorization.Get(apiContext, resource.authorization.id); this.RecordConnectionDetails(); var cap = new Capture { amount = new Amount { total = "1", currency = "USD" } }; var response = authorization.Capture(apiContext, cap); this.RecordConnectionDetails(); var fund = new Refund { amount = new Amount { total = "1", currency = "USD" } }; apiContext.ResetRequestId(); var responseRefund = response.Refund(apiContext, fund); this.RecordConnectionDetails(); var retrievedRefund = Refund.Get(apiContext, responseRefund.id); this.RecordConnectionDetails(); Assert.AreEqual(responseRefund.id, retrievedRefund.id); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }
/// <summary> /// Tests that use this method must be ignored when run in an automated environment because executing an order /// will require approval via the executed payment's approval_url. /// </summary> /// <returns></returns> private Order GetExecutedPaymentOrder(PayPal.Api.APIContext apiContext) { var pay = PaymentTest.CreatePaymentOrder(apiContext); var paymentExecution = PaymentExecutionTest.GetPaymentExecution(); paymentExecution.payer_id = pay.id; paymentExecution.transactions[0].amount.details = null; var executedPayment = pay.Execute(apiContext, paymentExecution); var orderId = executedPayment.transactions[0].related_resources[0].order.id; return(Order.Get(apiContext, orderId)); }
public static PaymentHistory GetPaymentHistory() { List <Payment> paymentList = new List <Payment> { PaymentTest.GetPaymentForSale() }; PaymentHistory history = new PaymentHistory { count = 1, payments = paymentList, next_id = "1" }; return(history); }
public void AuthorizationCaptureTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); var pay = PaymentTest.CreatePaymentAuthorization(apiContext); this.RecordConnectionDetails(); Assert.IsNotNull(pay); Assert.IsNotNull(pay.transactions); Assert.IsTrue(pay.transactions.Count > 0); var transaction = pay.transactions[0]; Assert.IsNotNull(transaction.related_resources); Assert.IsTrue(transaction.related_resources.Count > 0); var resource = transaction.related_resources[0]; Assert.IsNotNull(resource.authorization); var authorize = Authorization.Get(apiContext, resource.authorization.id); this.RecordConnectionDetails(); var cap = new Capture { amount = new Amount { total = "1", currency = "USD" } }; var response = authorize.Capture(apiContext, cap); this.RecordConnectionDetails(); Assert.AreEqual("completed", response.state); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }
public void SaleRefundTest() { try { var apiContext = TestingUtil.GetApiContext(); this.RecordConnectionDetails(); // Create a credit card sale payment var payment = PaymentTest.CreatePaymentForSale(apiContext); this.RecordConnectionDetails(); // Get the sale resource var sale = payment.transactions[0].related_resources[0].sale; var refund = new Refund { amount = new Amount { currency = "USD", total = "0.01" } }; apiContext.ResetRequestId(); var response = sale.Refund(apiContext, refund); this.RecordConnectionDetails(); Assert.IsNotNull(response); Assert.AreEqual("completed", response.state); } catch (ConnectionException) { this.RecordConnectionDetails(false); throw; } }