public void Can_Authorize_A_Payment() { //// Arrange var creditCardMethod = Provider.GetPaymentGatewayMethodByPaymentCode("CreditCard"); Assert.NotNull(creditCardMethod); var ccEntry = new CreditCardFormData() { CreditCardType = "VISA", CardholderName = "Alex Lindgren", CardNumber = "4012888888881881", CardCode = "111", ExpireMonth = "09", ExpireYear = "15" }; //// Act var result = creditCardMethod.AuthorizePayment(_invoice, ccEntry.AsProcessorArgumentCollection()); //// Assert Assert.NotNull(result); Assert.IsTrue(result.Payment.Success); var payment = result.Payment.Result; }
public void Can_AuthorizeAndCapture_A_Payment() { //// Arrange var creditCardMethod = Provider.GetPaymentGatewayMethodByPaymentCode("CreditCard"); Assert.NotNull(creditCardMethod); var ccEntry = new CreditCardFormData() { CreditCardType = "VISA", CardholderName = "Alex Lindgren", CardNumber = "4012888888881881", CardCode = "111", ExpireMonth = "09", ExpireYear = "15" }; //// Act var result = creditCardMethod.AuthorizeCapturePayment(_invoice, _invoice.Total, ccEntry.AsProcessorArgumentCollection()); //// Assert Assert.NotNull(result); Assert.IsTrue(result.Payment.Success); var payment = result.Payment.Result; Assert.IsFalse(_invoice.IsDirty()); Assert.AreEqual(Core.Constants.DefaultKeys.InvoiceStatus.Paid, _invoice.InvoiceStatusKey); }
public void Can_Authorize_And_Then_Later_Capture_A_Payment() { var creditCardMethod = Provider.GetPaymentGatewayMethodByPaymentCode("CreditCard"); Assert.NotNull(creditCardMethod); var ccEntry = new CreditCardFormData() { CreditCardType = "VISA", CardholderName = "Alex Lindgren", CardNumber = "4012888888881881", CardCode = "111", ExpireMonth = "09", ExpireYear = "15" }; var authorizes = creditCardMethod.AuthorizePayment(_invoice, ccEntry.AsProcessorArgumentCollection()); Assert.IsTrue(authorizes.Payment.Success, "authorize call failed"); Assert.AreNotEqual(Core.Constants.DefaultKeys.InvoiceStatus.Paid, _invoice.InvoiceStatusKey, "invoice is marked as paid and is only authorized"); //// Act var authorizedPayment = authorizes.Payment.Result; var result = creditCardMethod.CapturePayment(_invoice, authorizedPayment, _invoice.Total, new ProcessorArgumentCollection()); //// Assert Assert.NotNull(result); Assert.IsTrue(result.Payment.Success); var payment = result.Payment.Result; Assert.IsFalse(_invoice.IsDirty()); Assert.AreEqual(Core.Constants.DefaultKeys.InvoiceStatus.Paid, _invoice.InvoiceStatusKey); }
public void Can_AuthFail_A_Payment() { //// Arrange var creditCardMethod = Provider.GetPaymentGatewayMethodByPaymentCode("CreditCard"); Assert.NotNull(creditCardMethod); var ccEntry = new CreditCardFormData() { CreditCardType = "VISA", CardholderName = "Alex Lindgren", CardNumber = "1234123412341234", CardCode = "111", ExpireMonth = "09", ExpireYear = "15" }; //// Act var result = creditCardMethod.AuthorizePayment(_invoice, ccEntry.AsProcessorArgumentCollection()); //// Assert Assert.NotNull(result); Assert.IsFalse(result.Payment.Success); Assert.IsTrue(result.Payment.Exception.Message == "Your card number is incorrect."); }