mirror of
https://github.com/stripe/stripe-ruby.git
synced 2025-10-05 00:02:50 -04:00
Usage on a top-level collection: ``` Stripe::Customer.list.auto_paging_each do |customer| puts customer end ``` Usage on a subcollection: ``` ruby customer.invoices.auto_paging_each do |invoice| puts invoice end ``` We've also renamed `#all` to `#list` to prevent confusion ("all" implies that all resources are being returned, and in Stripe's paginated API this was not the case). An alias has been provided for backward API compatibility. Fixes #167. Replaces #211 and #248.
56 lines
1.8 KiB
Ruby
56 lines
1.8 KiB
Ruby
require File.expand_path('../../test_helper', __FILE__)
|
|
|
|
module Stripe
|
|
class RefundTest < Test::Unit::TestCase
|
|
should "refunds should be listable" do
|
|
@mock.expects(:get).
|
|
with("#{Stripe.api_base}/v1/refunds", nil, nil).
|
|
once.returns(make_response(make_refund_array))
|
|
|
|
refunds = Stripe::Refund.list
|
|
|
|
assert refunds.first.kind_of?(Stripe::Refund)
|
|
end
|
|
|
|
should "refunds should be refreshable" do
|
|
@mock.expects(:get).
|
|
with("#{Stripe.api_base}/v1/refunds/test_refund", nil, nil).
|
|
twice.returns(make_response(make_refund(:id => 'test_refund')),
|
|
make_response(make_refund(:id => 'refreshed_refund')))
|
|
|
|
refund = Stripe::Refund.retrieve('test_refund')
|
|
refund.refresh
|
|
|
|
assert_equal 'refreshed_refund', refund.id
|
|
end
|
|
|
|
should "refunds should be updateable" do
|
|
@mock.expects(:get).
|
|
with("#{Stripe.api_base}/v1/refunds/get_refund", nil, nil).
|
|
once.returns(make_response(make_refund(:id => 'save_refund')))
|
|
|
|
@mock.expects(:post).
|
|
with("#{Stripe.api_base}/v1/refunds/save_refund", nil, 'metadata[key]=value').
|
|
once.returns(make_response(make_refund(:metadata => {'key' => 'value'})))
|
|
|
|
refund = Stripe::Refund.retrieve('get_refund')
|
|
|
|
assert_equal nil, refund.metadata['key']
|
|
|
|
refund.metadata['key'] = 'value'
|
|
refund.save
|
|
|
|
assert_equal 'value', refund.metadata['key']
|
|
end
|
|
|
|
should "create should return a new refund" do
|
|
@mock.expects(:post).
|
|
with("#{Stripe.api_base}/v1/refunds", nil, 'charge=test_charge').
|
|
once.returns(make_response(make_refund(:id => 'test_new_refund')))
|
|
|
|
refund = Stripe::Refund.create(:charge => 'test_charge')
|
|
assert_equal 'test_new_refund', refund.id
|
|
end
|
|
end
|
|
end
|