Sha256: 5c858cc05e5002d8737eeaaf549deaa176b6e8accf9500615cad7e0eb8052545

Contents?: true

Size: 1.98 KB

Versions: 52

Compression:

Stored size: 1.98 KB

Contents

# frozen_string_literal: true

require ::File.expand_path("../test_helper", __dir__)

module Stripe
  class InvoiceItemTest < Test::Unit::TestCase
    should "be listable" do
      invoiceitems = Stripe::InvoiceItem.list
      assert_requested :get, "#{Stripe.api_base}/v1/invoiceitems"
      assert invoiceitems.data.is_a?(Array)
      assert invoiceitems.first.is_a?(Stripe::InvoiceItem)
    end

    should "be retrievable" do
      item = Stripe::InvoiceItem.retrieve("ii_123")
      assert_requested :get,
                       "#{Stripe.api_base}/v1/invoiceitems/ii_123"
      assert item.is_a?(Stripe::InvoiceItem)
    end

    should "be creatable" do
      item = Stripe::InvoiceItem.create(
        amount: 100,
        currency: "USD",
        customer: "cus_123"
      )
      assert_requested :post,
                       "#{Stripe.api_base}/v1/invoiceitems"
      assert item.is_a?(Stripe::InvoiceItem)
    end

    should "be saveable" do
      item = Stripe::InvoiceItem.retrieve("ii_123")
      item.metadata["key"] = "value"
      item.save
      assert_requested :post,
                       "#{Stripe.api_base}/v1/invoiceitems/#{item.id}"
    end

    should "be updateable" do
      item = Stripe::InvoiceItem.update("ii_123", metadata: { key: "value" })
      assert_requested :post,
                       "#{Stripe.api_base}/v1/invoiceitems/ii_123"
      assert item.is_a?(Stripe::InvoiceItem)
    end

    context "#delete" do
      should "be deletable" do
        item = Stripe::InvoiceItem.retrieve("ii_123")
        item = item.delete
        assert_requested :delete,
                         "#{Stripe.api_base}/v1/invoiceitems/#{item.id}"
        assert item.is_a?(Stripe::InvoiceItem)
      end
    end

    context ".delete" do
      should "be deletable" do
        item = Stripe::InvoiceItem.delete("ii_123")
        assert_requested :delete,
                         "#{Stripe.api_base}/v1/invoiceitems/ii_123"
        assert item.is_a?(Stripe::InvoiceItem)
      end
    end
  end
end

Version data entries

52 entries across 52 versions & 2 rubygems

Version Path
stripe-5.31.0 test/stripe/invoice_item_test.rb
stripe-5.30.0 test/stripe/invoice_item_test.rb
stripe-5.29.1 test/stripe/invoice_item_test.rb
stripe-5.29.0 test/stripe/invoice_item_test.rb
stripe-5.28.0 test/stripe/invoice_item_test.rb
stripe-5.27.0 test/stripe/invoice_item_test.rb
stripe-5.26.0 test/stripe/invoice_item_test.rb
stripe-5.25.0 test/stripe/invoice_item_test.rb
stripe-5.24.0 test/stripe/invoice_item_test.rb
stripe-5.23.1 test/stripe/invoice_item_test.rb
stripe-5.23.0 test/stripe/invoice_item_test.rb
stripe-5.22.0 test/stripe/invoice_item_test.rb
stripe-5.21.0 test/stripe/invoice_item_test.rb
stripe-5.20.0 test/stripe/invoice_item_test.rb
stripe-5.19.0 test/stripe/invoice_item_test.rb
stripe-5.18.0 test/stripe/invoice_item_test.rb
stripe-5.17.0 test/stripe/invoice_item_test.rb
stripe-5.16.0 test/stripe/invoice_item_test.rb
stripe-5.15.0 test/stripe/invoice_item_test.rb
stripe-5.14.0 test/stripe/invoice_item_test.rb