Sha256: 9616890b6b741e5ce56fc423012af24d787dee595ef5ef91380b6ff221c97bb2

Contents?: true

Size: 1.57 KB

Versions: 6

Compression:

Stored size: 1.57 KB

Contents

require File.expand_path(File.join(File.dirname(__FILE__), '../unit_test_helper'))

describe BraintreeRails::Subscriptions do

  before do
    stub_braintree_request(:get, '/plans', :body => fixture('plans.xml'))
    stub_braintree_request(:post, '/subscriptions/advanced_search_ids', :body => fixture('subscription_ids.xml'))
    stub_braintree_request(:post, '/subscriptions/advanced_search', :body => fixture('subscriptions.xml'))
  end

  describe '#initialize' do
    it 'should load an array of Braintree::Subscription for given plan' do
      braintree_subscriptions = Braintree::Subscription.search do |search|
        search.plan_id.is 'plan_id'
      end

      subscriptions = BraintreeRails::Subscriptions.new(BraintreeRails::Plan.new('plan_id'))

      subscriptions.map(&:id).sort.must_equal braintree_subscriptions.map(&:id).sort
    end

    it 'should load all subscriptions' do
      stub_braintree_request(:post, '/subscriptions/advanced_search_ids', :body => fixture('subscription_ids.xml'))
      stub_braintree_request(:post, '/subscriptions/advanced_search', :body => fixture('subscriptions.xml'))

      braintree_subscriptions = Braintree::Subscription.search
      subscriptions = BraintreeRails::Subscriptions.new(nil)
      subscriptions.map(&:id).sort.must_equal braintree_subscriptions.map(&:id).sort
    end
  end

  describe '#build' do
    it 'has no default options when loading all' do
      subscriptions = BraintreeRails::Subscriptions.new(nil)
      subscription = subscriptions.build
      subscription.attributes.values.compact.must_be :empty?
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
braintree-rails-1.2.3 test/unit/braintree_rails/subscriptions_test.rb
braintree-rails-1.2.2 test/unit/braintree_rails/subscriptions_test.rb
braintree-rails-1.2.1 test/unit/braintree_rails/subscriptions_test.rb
braintree-rails-1.2.0 test/unit/braintree_rails/subscriptions_test.rb
braintree-rails-1.1.0 test/unit/braintree_rails/subscriptions_test.rb
braintree-rails-1.0.0 test/unit/braintree_rails/subscriptions_test.rb