stripe-ruby/test/stripe/bitcoin_receiver_test.rb
2017-02-14 12:07:18 -08:00

64 lines
2.7 KiB
Ruby

require File.expand_path('../../test_helper', __FILE__)
module Stripe
class BitcoinReceiverTest < Test::Unit::TestCase
should "retrieve should retrieve bitcoin receiver" do
stub_request(:get, "#{Stripe.api_base}/v1/bitcoin/receivers/btcrcv_test_receiver").
to_return(body: make_response(make_bitcoin_receiver))
receiver = Stripe::BitcoinReceiver.retrieve('btcrcv_test_receiver')
assert_equal 'btcrcv_test_receiver', receiver.id
end
should "create should create a bitcoin receiver" do
stub_request(:post, "#{Stripe.api_base}/v1/bitcoin/receivers").
to_return(body: make_response(make_bitcoin_receiver))
receiver = Stripe::BitcoinReceiver.create
assert_equal "btcrcv_test_receiver", receiver.id
end
should "all should list bitcoin receivers" do
stub_request(:get, "#{Stripe.api_base}/v1/bitcoin/receivers").
to_return(body: make_response(make_bitcoin_receiver_array))
receivers = Stripe::BitcoinReceiver.list
assert_equal 3, receivers.data.length
assert receivers.data.kind_of? Array
receivers.each do |receiver|
assert receiver.kind_of?(Stripe::BitcoinReceiver)
receiver.transactions.data.each do |transaction|
assert transaction.kind_of?(Stripe::BitcoinTransaction)
end
end
end
should "update should update a bitcoin receiver" do
receiver = Stripe::BitcoinReceiver.construct_from(make_bitcoin_receiver)
stub_request(:get, "#{Stripe.api_base}/v1/bitcoin/receivers/#{receiver.id}").
to_return(body: make_response(make_bitcoin_receiver))
receiver.refresh
stub_request(:post, "#{Stripe.api_base}/v1/bitcoin/receivers/#{receiver.id}").
with(body: { description: "details" }).
to_return(body: make_response(make_bitcoin_receiver))
receiver.description = "details"
receiver.save
end
should "delete a bitcoin receiver with no customer through top-level API" do
receiver = Stripe::BitcoinReceiver.construct_from(make_bitcoin_receiver)
stub_request(:delete, "#{Stripe.api_base}/v1/bitcoin/receivers/#{receiver.id}").
to_return(body: make_response({:deleted => true, :id => "btcrcv_test_receiver"}))
receiver.delete
assert(receiver.deleted)
end
should "delete a bitcoin receiver with a customer through customer's subresource API" do
receiver = Stripe::BitcoinReceiver.construct_from(make_bitcoin_receiver(:customer => 'customer_foo'))
stub_request(:delete, "#{Stripe.api_base}/v1/customers/customer_foo/sources/#{receiver.id}").
to_return(body: make_response({:deleted => true, :id => "btcrcv_test_receiver"}))
receiver.delete
assert(receiver.deleted)
end
end
end