@Test(groups = "slow", description = "Verify we can make a refund on payment whose original payment method was deleted. See 694") public void testRefundAfterDeletedPaymentMethod() throws PaymentApiException { final BigDecimal requestedAmount = BigDecimal.TEN; final Payment payment = paymentApi.createPurchase(account, account.getPaymentMethodId(), null, requestedAmount, Currency.EUR, null, UUID.randomUUID().toString(), UUID.randomUUID().toString(), ImmutableList.<PluginProperty>of(), callContext); paymentApi.deletePaymentMethod(account, account.getPaymentMethodId(), false, true, ImmutableList.<PluginProperty>of(), callContext); final Payment newPayment = paymentApi.createRefund(account, payment.getId(),requestedAmount, Currency.EUR, null, UUID.randomUUID().toString(), ImmutableList.<PluginProperty>of(), callContext); Assert.assertEquals(newPayment.getTransactions().size(), 2); }
case REFUND: if (paymentOptions == null) { createdPayment = osgiKillbillAPI.getPaymentApi().createRefund(account, kbPaymentId, amount,
@Test(groups = "slow", description = "https://github.com/killbill/killbill/issues/255") public void testRefundWithDeletedPaymentMethod() throws Exception { // delete payment method busHandler.pushExpectedEvent(NextEvent.TAG); paymentApi.deletePaymentMethod(account, account.getPaymentMethodId(), true, true, new ArrayList<PluginProperty>(), callContext); assertListenerStatus(); // try to create a refund for a payment with its payment method deleted busHandler.pushExpectedEvent(NextEvent.PAYMENT); paymentApi.createRefund(account, payment.getId(), payment.getPurchasedAmount(), payment.getCurrency(), null, UUID.randomUUID().toString(), PLUGIN_PROPERTIES, callContext); assertListenerStatus(); }
assertEquals(payment3.getTransactions().size(), 3); final Payment payment4 = paymentApi.createRefund(account, payment3.getId(), payment3.getCapturedAmount(), Currency.USD, null, transactionExternalKey4, ImmutableList.<PluginProperty>of(), callContext); assertEquals(payment4.getAuthAmount().compareTo(authAmount), 0); assertEquals(payment4.getCapturedAmount().compareTo(captureAmount.add(captureAmount)), 0);
Assert.assertEquals(payment.getTransactions().get(0).getTransactionStatus(), TransactionStatus.SUCCESS); final Payment pendingRefund = paymentApi.createRefund(account, payment.getId(), requestedAmount, final Payment pendingRefund2 = paymentApi.createRefund(account, payment.getId(), null, final Payment pendingRefund3 = paymentApi.createRefund(account, payment.getId(), refundAmount, final Payment pendingRefund4 = paymentApi.createRefund(account, payment.getId(), null,
Assert.assertEquals(paymentTransactionModelDao.getTransactionStatus(), TransactionStatus.SUCCESS); final Payment refund = paymentApi.createRefund(account, payment.getId(), payment.getPurchasedAmount(),
Assert.assertEquals(paymentTransactionModelDao.getTransactionStatus(), TransactionStatus.SUCCESS); final Payment refund = paymentApi.createRefund(account, payment.getId(), payment.getPurchasedAmount(),
callContext); case REFUND: return paymentApi.createRefund(account, paymentId, amount,
paymentApi.createRefund(account, payment.getId(), requestedAmount, final Payment payment4 = paymentApi.createRefund(account, payment.getId(), refundAmount, paymentApi.createRefund(account, payment.getId(), refundAmount,