Esempio n. 1
0
        public void CompleteThreeDsFail(string receiptId, ThreeDResultModel threeDResult,
                                        string responseData)
        {
            var httpClient = Substitute.For <IHttpClient>();
            var response   = new HttpResponseMessage(HttpStatusCode.InternalServerError)
            {
                Content = new StringContent(responseData)
            };

            response.Content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            var responseTask = new TaskCompletionSource <HttpResponseMessage>();

            responseTask.SetResult(response);

            httpClient.SendAsync(Arg.Any <HttpRequestMessage>()).Returns(responseTask.Task);

            var client = new Client(new Connection(httpClient,
                                                   DotNetLoggerFactory.Create,
                                                   "http://judo.com"));

            var judo = new JudoPayApi(DotNetLoggerFactory.Create, client);

            var paymentReceiptResult =
                judo.ThreeDs.Complete3DSecure(receiptId, threeDResult).Result;

            Assert.NotNull(paymentReceiptResult);
            Assert.IsTrue(paymentReceiptResult.HasError);
        }
 public async Task <IResult <ITransactionResult> > CompleteDSecure(string receiptID, string paRes, string md)
 {
     try {
         ThreeDResultModel model = new ThreeDResultModel();
         model.PaRes = paRes;
         Task <IResult <PaymentReceiptModel> > task = _judoAPI.ThreeDs.Complete3DSecure(receiptID, model);
         return(await task);
     } catch (Exception e) {
         var error = new JudoError()
         {
             Exception = e,
             ApiError  = new JudoPayDotNet.Errors.JudoApiErrorModel()
             {
                 ErrorMessage = e.InnerException.ToString()
             }
         };
         throw error;
     }
 }
Esempio n. 3
0
        public Task <IResult <PaymentReceiptModel> > Complete3DSecure(string receiptId, ThreeDResultModel model)
        {
            var validationError = Validate <ThreeDResultModel, PaymentReceiptModel>(_threeDResultValidator, model);

            var address = string.Format("{0}/{1}", CompleteThreeDAuthorizationAddress, receiptId);

            return(validationError ?? PutInternal <ThreeDResultModel, PaymentReceiptModel>(address, model));
        }