public async Task Retrieve_an_existing_payment() { var request = new AuthoriseRequest() { CardDetails = new CardDetails() { CardNumber = "424242424242", ExpiryDate = "0129", SecurityCode = "111" }, MerchantAccount = "CheckoutCom", Amount = 25.00m, CurrencyCode = "GBP" }; var authoriseResponse = await PaymentServiceClient.Authorise(request); var paymentResponse = await PaymentServiceClient.GetPayment(authoriseResponse.Content.Id, "CheckoutCom"); Assert.That(paymentResponse.HttpStatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.That(paymentResponse.Content.Id, Is.EqualTo(paymentResponse.Content.Id)); Assert.That(paymentResponse.Content.Amount, Is.EqualTo(paymentResponse.Content.Amount)); Assert.That(paymentResponse.Content.CurrencyCode, Is.EqualTo(paymentResponse.Content.CurrencyCode)); Assert.That(paymentResponse.Content.Status, Is.EqualTo(paymentResponse.Content.Status)); Assert.That(paymentResponse.Content.CardDetails.CardNumber, Is.EqualTo(paymentResponse.Content.CardDetails.CardNumber)); Assert.That(paymentResponse.Content.CardDetails.ExpiryDate, Is.EqualTo(paymentResponse.Content.CardDetails.ExpiryDate)); Assert.That(paymentResponse.Content.CardDetails.SecurityCode, Is.EqualTo(paymentResponse.Content.CardDetails.SecurityCode)); }
public async Task Payment_authorisation_failed() { var expectedRejectionRequest = new AuthoriseRequest() { CardDetails = new CardDetails() { CardNumber = "424242424242", ExpiryDate = "0129", SecurityCode = "222" }, MerchantAccount = "CheckoutCom", Amount = 25.00m, CurrencyCode = "GBP" }; var response = await PaymentServiceClient.Authorise(expectedRejectionRequest); Assert.That(response.HttpStatusCode, Is.EqualTo(HttpStatusCode.UnprocessableEntity)); Assert.NotNull(response.Content.Id); Assert.That(response.Content.Id, Is.Not.EqualTo("psp_reference_id")); Assert.That(response.Content.Status, Is.EqualTo("Failed")); Assert.IsNotEmpty(response.Content.Errors); ThenValidPaymentAndOrderBody(expectedRejectionRequest, response.Content); }
public CreditCardPaymentProcessingResponse ProcessCreditCard(CreditCardRequest request) { string cardNumber = request.CardNumber; string swipe = request.CardSwipe; var encryptor = new CreditCardEncryption(); request.CardNumber = encryptor.Encrypt(cardNumber); request.CardSwipe = encryptor.Encrypt(swipe); var returnValue = new CreditCardPaymentProcessingResponse(); try { using (var client = new PaymentServiceClient()) { client.Open(); returnValue = client.ProcessCreditCard(request); return(returnValue); } } finally { request.CardNumber = cardNumber; request.CardSwipe = swipe; returnValue.CardNumber = cardNumber; } }
public string payRequestHelp(string reqId) { var ip = "jimmyMStation";//"172.16.144.70"; var port = 6379; var res = string.Empty; using (var help = helpBase.init(ip, port,new TimeSpan(0,5,0))) { var subItem = reqId; var waitTime = 5000; res = help.inTimePaymentMethodHelp(subItem, waitTime, () => { var billRes = new paymentEntity(); using (var req = new PaymentServiceClient()) { billRes = req.createBillHelp(new inTimeReqPara { ReqId = reqId }); } bool flag = false; if (string.IsNullOrEmpty(billRes.BillNo)) { flag = false; } else { flag = true; #region read paymentResult in cache //repeated payment req //if (string.IsNullOrEmpty(redisValueTmp)) //{ // //async //} //else //{ // var payInfoTmp = redisValueTmp.FromJson<Dictionary<string, string>>(); // var method = payInfoTmp["payMethod"]; // var result = payInfoTmp["result"]; // if (payMethod.sync.Equals(result)) // { // //sync // } // else // { // } //} #endregion } return flag; }); //var payInfoTmp = res.FromJson<Dictionary<string, string>>(); //var method = payInfoTmp["payMethod"]; //var result = payInfoTmp["result"]; return res; } }
public async Task Payment_authorisation_with_invalid_payment() { var invalidRequest = new AuthoriseRequest(); var response = await PaymentServiceClient.Authorise(invalidRequest); Assert.That(response.HttpStatusCode, Is.EqualTo(HttpStatusCode.BadRequest)); Assert.IsNotEmpty(response.Content.Errors); }
public void processPayment(bankEntity bankEntity) { Thread.Sleep(2000); var res = new inTimeEntity { PaymentResult = "ok", BankEnt = new paymentService.bankEntity { PayId = bankEntity.PayId } }; var t = Task.Factory.StartNew(() => { using (var req = new PaymentServiceClient()) { req.paymentResultHook(res); } }); t.Wait(100); //Thread.Sleep(3000); // var res = new inTimeEntity(); // res.PaymentResult = "ok"; }
public string payRequest(string reqId) { var ip = "jimmyMStation";//"172.16.144.70"; var port = 6379; using (var help = helpBase.init(ip, port, new TimeSpan(0, 5, 0))) { var subitem = reqId; var waittime = 5000; var t = help.subscriberInTime(subitem, waittime); //request paymentsoa return billno var billres = new paymentEntity(); using (var req = new PaymentServiceClient()) { billres = req.createBill(new inTimeReqPara { ReqId = reqId }); } if (string.IsNullOrEmpty(billres.BillNo)) { return("failed"); } var res = t.Result; var pubitem = billres.BillNo; var pubvalue = string.Empty; //thread.sleep(30000); if (string.IsNullOrEmpty(res)) { pubvalue = "async"; } else { pubvalue = "sync"; } help.publish(pubitem, pubvalue); return(res); } }
public string payRequest(string reqId) { var ip = "jimmyMStation";//"172.16.144.70"; var port = 6379; using (var help = helpBase.init(ip, port, new TimeSpan(0, 5, 0))) { var subitem = reqId; var waittime = 5000; var t = help.subscriberInTime(subitem, waittime); //request paymentsoa return billno var billres = new paymentEntity(); using (var req = new PaymentServiceClient()) { billres = req.createBill(new inTimeReqPara { ReqId = reqId }); } if (string.IsNullOrEmpty(billres.BillNo)) { return "failed"; } var res = t.Result; var pubitem = billres.BillNo; var pubvalue = string.Empty; //thread.sleep(30000); if (string.IsNullOrEmpty(res)) { pubvalue = "async"; } else { pubvalue = "sync"; } help.publish(pubitem, pubvalue); return res; } }
public void processPaymentHelp(bankEntity bankEntity) { Thread.Sleep(2000); var res = new inTimeEntity { PaymentResult = "ok", BankEnt = new paymentService.bankEntity { PayId = bankEntity.PayId } }; var t = Task.Factory.StartNew(() => { using (var req = new PaymentServiceClient()) { req.paymentResultHookHelp(res); } }); t.Wait(100); //Thread.Sleep(3000); // var res = new inTimeEntity(); // res.PaymentResult = "ok"; }
private void loadList() { PaymentServiceClient payService = new PaymentServiceClient(); if (IDnum == "All") payment = new List<Payment>(payService.GetAllPayments()); else payment = new List<Payment>(payService.GetAllStudentsPayments(IDnum)); gridView.DataSource = payment; GroupDescriptor descriptor = new GroupDescriptor(); descriptor.GroupNames.Add("Student", ListSortDirection.Ascending); this.gridView.GroupDescriptors.Add(descriptor); GridViewSummaryItem summaryItem = new GridViewSummaryItem("Amount", "Total: {0}", GridAggregateFunction.Sum); GridViewSummaryRowItem summaryRowItem = new GridViewSummaryRowItem(); summaryRowItem.Add(summaryItem); this.gridView.SummaryRowsBottom.Add(summaryRowItem); }
public async Task Authorise_a_payment_successfully() { var expectedSuccessRequest = new AuthoriseRequest() { CardDetails = new CardDetails() { CardNumber = "424242424242", ExpiryDate = "0129", SecurityCode = "111" }, MerchantAccount = "CheckoutCom", Amount = 25.00m, CurrencyCode = "GBP" }; var response = await PaymentServiceClient.Authorise(expectedSuccessRequest); Assert.That(response.HttpStatusCode, Is.EqualTo(HttpStatusCode.OK)); Assert.NotNull(response.Content.Id); Assert.That(response.Content.Id, Is.Not.EqualTo("psp_reference_id")); Assert.That(response.Content.Status, Is.EqualTo("Accepted")); ThenValidPaymentAndOrderBody(expectedSuccessRequest, response.Content); }
public CreditCardPaymentProcessingResponse CompletePreAuth(CreditCardRequest request, long invoiceNumber) { string cardNumber = request.CardNumber; string swipe = request.CardSwipe; var encryptor = new CreditCardEncryption(); request.CardNumber = encryptor.Encrypt(cardNumber); request.CardSwipe = encryptor.Encrypt(swipe); var returnValue = new CreditCardPaymentProcessingResponse(); try { using (var client = new PaymentServiceClient()) { client.Open(); returnValue = client.CompletePreAuth(request, invoiceNumber); return returnValue; } } finally { request.CardNumber = cardNumber; request.CardSwipe = swipe; returnValue.CardNumber = cardNumber; } }
public string payRequestHelp(string reqId) { var ip = "jimmyMStation";//"172.16.144.70"; var port = 6379; var res = string.Empty; using (var help = helpBase.init(ip, port, new TimeSpan(0, 5, 0))) { var subItem = reqId; var waitTime = 5000; res = help.inTimePaymentMethodHelp(subItem, waitTime, () => { var billRes = new paymentEntity(); using (var req = new PaymentServiceClient()) { billRes = req.createBillHelp(new inTimeReqPara { ReqId = reqId }); } bool flag = false; if (string.IsNullOrEmpty(billRes.BillNo)) { flag = false; } else { flag = true; #region read paymentResult in cache //repeated payment req //if (string.IsNullOrEmpty(redisValueTmp)) //{ // //async //} //else //{ // var payInfoTmp = redisValueTmp.FromJson<Dictionary<string, string>>(); // var method = payInfoTmp["payMethod"]; // var result = payInfoTmp["result"]; // if (payMethod.sync.Equals(result)) // { // //sync // } // else // { // } //} #endregion } return(flag); }); //var payInfoTmp = res.FromJson<Dictionary<string, string>>(); //var method = payInfoTmp["payMethod"]; //var result = payInfoTmp["result"]; return(res); } }
public async Task Payment_not_found() { var paymentResponse = await PaymentServiceClient.GetPayment(Guid.NewGuid().ToString(), "CheckoutCom"); Assert.That(paymentResponse.HttpStatusCode, Is.EqualTo(HttpStatusCode.NotFound)); }