public async Task can_create_a_checkout() { var requestInfo = @"""email"""; SetupServerSingleResponse(CheckoutData.CheckoutWithRequestInfo(requestInfo)); var newCheckout = new CreateCheckout { Name = "The Sovereign Individual", Description = "Mastering the Transition to the Information Age", LocalPrice = new Money { Amount = 100.00m, Currency = "USD" }, PricingType = PricingType.FixedPrice, RequestEmail = true }; var checkout = await api.CreateCheckoutAsync(newCheckout); var truth = new Response <Checkout> { Data = CheckoutData.CheckoutModel }; truth.Data.RequestedInfo.Add("email"); truth.Should().BeEquivalentTo(checkout); server.ShouldHaveCalled("https://api.commerce.coinbase.com/checkouts") .WithVerb(HttpMethod.Post); }
/// <summary> /// Create a new checkout. /// </summary> /// <param name="checkout">The checkout to create</param> public virtual Task <Response <Checkout> > CreateCheckoutAsync(CreateCheckout checkout) { return(CheckoutEndpoint .PostJsonAsync(checkout) .ReceiveJson <Response <Checkout> >()); }
/// <summary> /// Create a new checkout. /// </summary> /// <param name="checkout">The checkout to create</param> public virtual Task <Response <Checkout> > CreateCheckoutAsync(CreateCheckout checkout, CancellationToken cancellationToken = default) { return(CheckoutEndpoint .PostJsonAsync(checkout, cancellationToken) .ReceiveJson <Response <Checkout> >()); }