customer_test.rb 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. require 'test_helper'
  2. class CustomerTest < Test::Unit::TestCase
  3. def setup
  4. super
  5. fake 'customers/207119551', body: load_fixture('customers')
  6. @customer = ShopifyAPI::Customer.find(207119551)
  7. end
  8. test "search should get a customers collection" do
  9. fake "customers/search.json?query=Bob+country%3AUnited+States", :extension => false, :body => load_fixture('customers_search')
  10. results = ShopifyAPI::Customer.search(query: 'Bob country:United States')
  11. assert_equal 'Bob', results.first.first_name
  12. end
  13. test "account_activation_url should create an account activation url" do
  14. fake "customers/207119551/account_activation_url", :method => :post, :body => load_fixture('customers_account_activation_url')
  15. activation_url = "http://apple.myshopify.com/account/activate/207119551/86688abf23572680740b1c062fa37111-1458248616"
  16. assert_equal activation_url, @customer.account_activation_url
  17. end
  18. test "#send_invite with no params" do
  19. customer_invite_fixture = load_fixture('customer_invite')
  20. customer_invite = ActiveSupport::JSON.decode(customer_invite_fixture)
  21. fake 'customers/207119551/send_invite', method: :post, body: customer_invite_fixture
  22. customer_invite_response = @customer.send_invite
  23. assert_equal '{"customer_invite":{}}', WebMock.last_request.body
  24. assert_kind_of ShopifyAPI::CustomerInvite, customer_invite_response
  25. assert_equal customer_invite['customer_invite']['to'], customer_invite_response.to
  26. end
  27. test "#send_invite with params" do
  28. customer_invite_fixture = load_fixture('customer_invite')
  29. customer_invite = ActiveSupport::JSON.decode(customer_invite_fixture)
  30. fake 'customers/207119551/send_invite', method: :post, body: customer_invite_fixture
  31. customer_invite_response = @customer.send_invite(ShopifyAPI::CustomerInvite.new(customer_invite['customer_invite']))
  32. assert_equal customer_invite, ActiveSupport::JSON.decode(WebMock.last_request.body)
  33. assert_kind_of ShopifyAPI::CustomerInvite, customer_invite_response
  34. assert_equal customer_invite['customer_invite']['to'], customer_invite_response.to
  35. end
  36. end