require 'test_helper'

class ApplicationCreditTest < Test::Unit::TestCase
  def test_application_credit_create
    fake "application_credits", method: :post, status: 201, body: load_fixture('application_credit')

    credit = ShopifyAPI::ApplicationCredit.create(
      description: "refund for application charge",
      amount: 5.00,
      api_client_id: 861378,
      shop_id: 487168
    )

    assert_equal 'refund for application charge', credit.description
    assert_equal '5.00', credit.amount
  end

  def test_get_application_credit
    fake "application_credits/803742", method: :get, status: 201, body: load_fixture('application_credit')

    credit = ShopifyAPI::ApplicationCredit.find(803742)

    assert_equal 'refund for application charge', credit.description
    assert_equal '5.00', credit.amount
  end

  def test_list_application_credits
    fake "application_credits", method: :get, status: 201, body: load_fixture('application_credits')

    credit = ShopifyAPI::ApplicationCredit.find(:all)

    assert_equal 2, credit.size
    assert_equal '10.00', credit.last.amount
  end
end