Sha256: d36b0ed340a75bc627073747c01925eabf3199e3d454e82b603e78a00a502ce1

Contents?: true

Size: 1.83 KB

Versions: 20

Compression:

Stored size: 1.83 KB

Contents

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

module Stripe
  class ChargeTest < Test::Unit::TestCase
    FIXTURE = API_FIXTURES.fetch(:charge)

    should "be listable" do
      charges = Stripe::Charge.list
      assert_requested :get, "#{Stripe.api_base}/v1/charges"
      assert charges.data.kind_of?(Array)
      assert charges.data[0].kind_of?(Stripe::Charge)
    end

    should "be retrievable" do
      charge = Stripe::Charge.retrieve(FIXTURE[:id])
      assert_requested :get, "#{Stripe.api_base}/v1/charges/#{FIXTURE[:id]}"
      assert charge.kind_of?(Stripe::Charge)
    end

    should "be creatable" do
      charge = Stripe::Charge.create(
        amount: 100,
        currency: "USD",
        source: API_FIXTURES.fetch(:source)[:id]
      )
      assert_requested :post, "#{Stripe.api_base}/v1/charges"
      assert charge.kind_of?(Stripe::Charge)
    end

    should "be saveable" do
      charge = Stripe::Charge.retrieve(FIXTURE[:id])
      charge.metadata['key'] = 'value'
      charge.save
      assert_requested :post, "#{Stripe.api_base}/v1/charges/#{FIXTURE[:id]}"
    end

    should "be updateable" do
      charge = Stripe::Charge.update(FIXTURE[:id], metadata: {foo: 'bar'})
      assert_requested :post, "#{Stripe.api_base}/v1/charges/#{FIXTURE[:id]}"
      assert charge.kind_of?(Stripe::Charge)
    end

    context "#mark_as_fraudulent" do
      should "charges should be able to be marked as fraudulent" do
        charge = Stripe::Charge.retrieve(FIXTURE[:id])
        charge = charge.mark_as_fraudulent
        assert charge.kind_of?(Stripe::Charge)
      end
    end

    context "#mark_as_safe" do
      should "charges should be able to be marked as safe" do
        charge = Stripe::Charge.retrieve(FIXTURE[:id])
        charge = charge.mark_as_safe
        assert charge.kind_of?(Stripe::Charge)
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
stripe-3.0.3 test/stripe/charge_test.rb
stripe-3.0.1 test/stripe/charge_test.rb
stripe-3.0.0 test/stripe/charge_test.rb
stripe-2.12.0 test/stripe/charge_test.rb
stripe-2.11.0 test/stripe/charge_test.rb
stripe-2.10.0 test/stripe/charge_test.rb
stripe-2.9.0 test/stripe/charge_test.rb
stripe-2.8.0 test/stripe/charge_test.rb
stripe-2.7.0 test/stripe/charge_test.rb
stripe-2.6.0 test/stripe/charge_test.rb
stripe-2.5.0 test/stripe/charge_test.rb
stripe-2.4.0 test/stripe/charge_test.rb
stripe-2.3.0 test/stripe/charge_test.rb
stripe-2.2.1 test/stripe/charge_test.rb
stripe-2.2.0 test/stripe/charge_test.rb
stripe-2.1.0 test/stripe/charge_test.rb
stripe-2.0.3 test/stripe/charge_test.rb
stripe-2.0.2 test/stripe/charge_test.rb
stripe-2.0.1 test/stripe/charge_test.rb
stripe-2.0.0 test/stripe/charge_test.rb