checkouts_test.rb 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. # frozen_string_literal: true
  2. require 'test_helper'
  3. class CheckoutsTest < Test::Unit::TestCase
  4. def setup
  5. super
  6. @expected_checkouts = JSON.parse(load_fixture('checkouts'))['checkouts']
  7. @expected_checkout_id = JSON.parse(load_fixture('checkout'))['checkout']['token']
  8. end
  9. test ":create creates a checkout" do
  10. fake 'checkouts', method: :post, status: 201, body: load_fixture('checkout')
  11. checkout = ShopifyAPI::Checkout.create
  12. assert_equal @expected_checkout_id, checkout.id
  13. end
  14. test "get all checkouts indexed by token" do
  15. fake 'checkouts', method: :get, status: 200, body: load_fixture('checkouts')
  16. checkouts = ShopifyAPI::Checkout.all
  17. assert_equal @expected_checkout_id, checkouts.first.id
  18. assert_equal @expected_checkouts.size, checkouts.size
  19. end
  20. test ":complete completes a checkout" do
  21. fake "checkouts/#{@expected_checkout_id}", method: :get, status: 200, body: load_fixture('checkout')
  22. checkout = ShopifyAPI::Checkout.find(@expected_checkout_id)
  23. fake "checkouts/#{@expected_checkout_id}/complete", method: :post, status: 200, body: load_fixture('checkouts')
  24. checkout.complete
  25. end
  26. end