Sha256: 7cd3be4f9d64bdc6c091f4a69cbd69be24853993504cfa01cdab01ca22ace480

Contents?: true

Size: 1.72 KB

Versions: 5

Compression:

Stored size: 1.72 KB

Contents

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

module Stripe
  class SubscriptionItemTest < Test::Unit::TestCase
    should "be listable" do
      items = Stripe::SubscriptionItem.list(
        subscription: "sub_123",
      )
      assert_requested :get, "#{Stripe.api_base}/v1/subscription_items",
        query: { subscription: "sub_123" }
      assert items.data.kind_of?(Array)
      assert items.data[0].kind_of?(Stripe::SubscriptionItem)
    end

    should "be retrievable" do
      item = Stripe::SubscriptionItem.retrieve("si_123")
      assert_requested :get, "#{Stripe.api_base}/v1/subscription_items/si_123"
      assert item.kind_of?(Stripe::SubscriptionItem)
    end

    should "be creatable" do
      item = Stripe::SubscriptionItem.create(
        item: 'silver',
        plan: "sapphire-elite",
        quantity: 3,
        subscription: "sub_123"
      )
      assert_requested :post, "#{Stripe.api_base}/v1/subscription_items"
      assert item.kind_of?(Stripe::SubscriptionItem)
    end

    should "be saveable" do
      item = Stripe::SubscriptionItem.retrieve("si_123")
      item.quantity = 4
      item.save
      assert_requested :post, "#{Stripe.api_base}/v1/subscription_items/#{item.id}"
    end

    should "be updateable" do
      item = Stripe::SubscriptionItem.update("si_123", metadata: {foo: 'bar'})
      assert_requested :post, "#{Stripe.api_base}/v1/subscription_items/si_123"
      assert item.kind_of?(Stripe::SubscriptionItem)
    end

    should "be deletable" do
      item = Stripe::SubscriptionItem.retrieve("si_123")
      item = item.delete
      assert_requested :delete, "#{Stripe.api_base}/v1/subscription_items/#{item.id}"
      assert item.kind_of?(Stripe::SubscriptionItem)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
stripe-3.3.2 test/stripe/subscription_item_test.rb
stripe-3.3.1 test/stripe/subscription_item_test.rb
stripe-3.3.0 test/stripe/subscription_item_test.rb
stripe-3.2.0 test/stripe/subscription_item_test.rb
stripe-3.1.0 test/stripe/subscription_item_test.rb