Sha256: 76f59e6dd6221e6dffb0f973f44f30330d0145f1c691c12a5a51a027d08177c4

Contents?: true

Size: 1.36 KB

Versions: 1

Compression:

Stored size: 1.36 KB

Contents

require File.expand_path("../../test_helper", __FILE__)

module Stripe
  class ExchangeRateTest < Test::Unit::TestCase
    should "be listable" do
      # TODO: remove stub once stripe-mock supports /v1/exchange_rates
      stub_request(:get, "#{Stripe.api_base}/v1/exchange_rates")
        .to_return(body: JSON.generate(
          object: "list",
          data: [
            {
              id: "eur",
              object: "exchange_rate",
              rates: { "usd" => 1.18221 },
            },
            {
              id: "usd",
              object: "exchange_rate",
              rates: { "eur" => 0.845876 },
            },
          ]
        ))

      list_rates = Stripe::ExchangeRate.list
      assert_requested :get, "#{Stripe.api_base}/v1/exchange_rates"
      assert list_rates.data.is_a?(Array)
      assert list_rates.data.first.is_a?(Stripe::ExchangeRate)
    end

    should "be retrievable" do
      # TODO: remove stub once stripe-mock supports /v1/exchange_rates
      stub_request(:get, "#{Stripe.api_base}/v1/exchange_rates/usd")
        .to_return(body: JSON.generate(
          id: "usd",
          object: "exchange_rate",
          rates: { "eur" => 0.845876 }
        ))

      rates = Stripe::ExchangeRate.retrieve("usd")
      assert_requested :get, "#{Stripe.api_base}/v1/exchange_rates/usd"
      assert rates.is_a?(Stripe::ExchangeRate)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
stripe-3.8.0 test/stripe/exchange_rate_test.rb