Sha256: 925f919d4df3a7829277555dc666ec6bf17c5ac872c6122f6bd9835bf0b1efab

Contents?: true

Size: 1.6 KB

Versions: 6

Compression:

Stored size: 1.6 KB

Contents

require 'spec_helper'

describe Chargify::SubscriptionMetadata do

  describe '.inspect' do
    specify { expect(described_class.inspect).to eql("Chargify::SubscriptionMetadata(resource_id: integer, current_name: string, name: string, value: string)") }
  end

  describe "#inspect" do
    its(:inspect) { should eql("#<Chargify::SubscriptionMetadata resource_id: nil, current_name: nil, name: nil, value: nil>") }
  end

  describe 'listing metadata for a subscription', :remote => true do
    it 'returns a list of metadata' do
      subscription, list = nil

      VCR.use_cassette 'subscription/find' do
        subscription = Chargify::Subscription.last
      end

      VCR.use_cassette 'subscription_metadata/list' do
        list = subscription.metadata
      end

      expect(list).to eql([])
    end
  end

  describe 'creating a piece of metadata', :remote => true do
    it 'can create a new metadata' do
      subscription, data, list = nil

      VCR.use_cassette 'subscription/find' do
        subscription = Chargify::Subscription.last
      end

      VCR.use_cassette 'subscription_metadata/create' do
        # Shorthand for Chargify::SubscriptionMetadata.create(:resource_id => sub.id ...)
        data = subscription.create_metadata(:name => 'favorite color', :value => 'red')
      end

      expect(data).to be_persisted
      expect(data.name).to eql('favorite color')
      expect(data.value).to eql('red')

      VCR.use_cassette 'subscription_metadata/list-after-create' do
        list = subscription.metadata
      end

      expect(list.size).to eql(1)
      expect(list).to include(data)
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
chargify_api_ares-1.3.3 spec/resources/subscription_metadata_spec.rb
chargify_api_ares-1.3.2 spec/resources/subscription_metadata_spec.rb
chargify_api_ares-1.3.1 spec/resources/subscription_metadata_spec.rb
chargify_api_ares-1.3.0 spec/resources/subscription_metadata_spec.rb
chargify_api_ares-1.2.1 spec/resources/subscription_metadata_spec.rb
chargify_api_ares-1.1.0 spec/resources/subscription_metadata_spec.rb