private AdvancedPayment Create(AdvancedPaymentCreateRequest request) { AdvancedPayment createdPayment; try { createdPayment = client.Create(request); } catch (MercadoPagoApiException ex) { if (ex.StatusCode == 422) { Thread.Sleep(5000); ResultsResourcesPage <AdvancedPayment> results = SearchByExternalReference(request.ExternalReference); createdPayment = results?.Results?.First(); } else { throw ex; } } return(createdPayment); }
private async Task <AdvancedPayment> CreateAsync(AdvancedPaymentCreateRequest request) { AdvancedPayment createdPayment; try { createdPayment = await client.CreateAsync(request); } catch (MercadoPagoApiException ex) { if (ex.StatusCode == 422) { await Task.Delay(5000); ResultsResourcesPage <AdvancedPayment> results = await SearchByExternalReferenceAsync(request.ExternalReference); createdPayment = results?.Results?.First(); } else { throw ex; } } return(createdPayment); }
public void Create_Approved_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "approved"); AdvancedPayment advancedPayment = Create(request); Assert.NotNull(advancedPayment); Assert.NotNull(advancedPayment.Id); Assert.True(advancedPayment.Capture); Assert.Equal(request.ExternalReference, advancedPayment.ExternalReference); }
public async Task CreateAsync_Approved_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "approved"); AdvancedPayment advancedPayment = await CreateAsync(request); Assert.NotNull(advancedPayment); Assert.NotNull(advancedPayment.Id); Assert.True(advancedPayment.Capture); Assert.Equal(request.ExternalReference, advancedPayment.ExternalReference); }
public void UpdateRealeaseDate_AllDisbursements_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "approved"); AdvancedPayment advancedPayment = Create(request); Thread.Sleep(5000); advancedPayment = client.UpdateReleaseDate( advancedPayment.Id.GetValueOrDefault(), DateTime.Now.AddDays(1)); Assert.NotNull(advancedPayment); }
public void Refund_Total_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "approved"); AdvancedPayment createdPayment = Create(request); Thread.Sleep(7000); ResourcesList <AdvancedPaymentDisbursementRefund> results = RefundTotal(createdPayment.Id.GetValueOrDefault()); Assert.NotNull(results); Assert.True(results.Count == 2); }
public void Get_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "approved"); AdvancedPayment createdPayment = Create(request); Thread.Sleep(5000); // Gets the payment AdvancedPayment advancedPayment = Get(createdPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(createdPayment.Id, advancedPayment.Id); }
public async Task UpdateRealeaseDateAsync_AllDisbursements_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "approved"); AdvancedPayment advancedPayment = await CreateAsync(request); await Task.Delay(5000); advancedPayment = await client.UpdateReleaseDateAsync( advancedPayment.Id.GetValueOrDefault(), DateTime.Now.AddDays(1)); Assert.NotNull(advancedPayment); }
public async Task RefundAsync_Total_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "approved"); AdvancedPayment createdPayment = await CreateAsync(request); await Task.Delay(7000); ResourcesList <AdvancedPaymentDisbursementRefund> results = await RefundTotalAsync(createdPayment.Id.GetValueOrDefault()); Assert.NotNull(results); Assert.True(results.Count == 2); }
public async Task GetAsync_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "approved"); AdvancedPayment createdPayment = await CreateAsync(request); await Task.Delay(5000); // Gets the payment AdvancedPayment advancedPayment = await GetAsync(createdPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(createdPayment.Id, advancedPayment.Id); }
public void Cancel_Pending_Success() { // Creates a pending advanced payment AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "pending"); AdvancedPayment advancedPayment = Create(request); Thread.Sleep(5000); // Cancels the payment advancedPayment = client.Cancel(advancedPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Cancelled, advancedPayment.Status); }
public async Task CancelAsync_Pending_Success() { // Creates a pending advanced payment AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "pending"); AdvancedPayment advancedPayment = await CreateAsync(request); await Task.Delay(5000); // Cancels the payment advancedPayment = await client.CancelAsync(advancedPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Cancelled, advancedPayment.Status); }
public void Search_ByExternalReference_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(true, "approved"); AdvancedPayment createdPayment = Create(request); Thread.Sleep(5000); ResultsResourcesPage <AdvancedPayment> results = SearchByExternalReference(createdPayment.ExternalReference); Assert.NotNull(results); Assert.NotNull(results.Paging); Assert.Equal(1, results.Paging.Total); Assert.NotNull(results.Results); Assert.Equal(createdPayment.Id, results.Results.First().Id); }
public void Capture_Pending_Success() { AdvancedPaymentCreateRequest request = BuildCreateRequest(false, "approved"); AdvancedPayment advancedPayment = Create(request); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Authorized, advancedPayment.Status); Thread.Sleep(7000); // Captures the payment advancedPayment = Capture(advancedPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Approved, advancedPayment.Status); }
public async Task SearchAsync_ByExternalReference_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(true, "approved"); AdvancedPayment createdPayment = await CreateAsync(request); await Task.Delay(5000); ResultsResourcesPage <AdvancedPayment> results = await SearchByExternalReferenceAsync(createdPayment.ExternalReference); Assert.NotNull(results); Assert.NotNull(results.Paging); Assert.Equal(1, results.Paging.Total); Assert.NotNull(results.Results); Assert.Equal(createdPayment.Id, results.Results.First().Id); }
public async Task CaptureAsync_Pending_Success() { AdvancedPaymentCreateRequest request = await BuildCreateRequestAsync(false, "approved"); AdvancedPayment advancedPayment = await CreateAsync(request); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Authorized, advancedPayment.Status); await Task.Delay(7000); // Captures the payment advancedPayment = await CaptureAsync(advancedPayment.Id.GetValueOrDefault()); Assert.NotNull(advancedPayment); Assert.Equal(AdvancedPaymentStatus.Approved, advancedPayment.Status); }