Wired up support for BitcoinReceiver

This commit is contained in:
Max Lahey 2014-12-16 16:06:05 -08:00
parent 7087e38bb9
commit 0e9a88f796
5 changed files with 62 additions and 3 deletions

View File

@ -41,6 +41,7 @@ require 'stripe/subscription'
require 'stripe/application_fee'
require 'stripe/refund'
require 'stripe/application_fee_refund'
require 'stripe/bitcoin_receiver'
# Errors
require 'stripe/errors/stripe_error'

View File

@ -0,0 +1,11 @@
module Stripe
class BitcoinReceiver < APIResource
include Stripe::APIOperations::Create
include Stripe::APIOperations::Update
include Stripe::APIOperations::List
def self.url
"/v1/bitcoin/receivers"
end
end
end

View File

@ -19,7 +19,7 @@ module Stripe
@object_classes ||= {
# data structures
'list' => ListObject,
# business objects
'application_fee' => ApplicationFee,
'balance' => Balance,
@ -37,7 +37,8 @@ module Stripe
'refund' => Refund,
'subscription' => Subscription,
'file_upload' => FileUpload,
'transfer' => Transfer
'transfer' => Transfer,
'bitcoin_receiver' => BitcoinReceiver
}
end
@ -126,7 +127,7 @@ module Stripe
when Hash
headers = {}
if opts[:idempotency_key]
headers[:idempotency_key] = opts[:idempotency_key]
headers[:idempotency_key] = opts[:idempotency_key]
end
if opts[:stripe_account]
headers[:stripe_account] = opts[:stripe_account]

View File

@ -0,0 +1,27 @@
require File.expand_path('../../test_helper', __FILE__)
module Stripe
class BitcoinReceiverTest < Test::Unit::TestCase
should "retrieve should retrieve bitcoin receiver" do
@mock.expects(:get).once.returns(test_response(test_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
@mock.expects(:post).once.returns(test_response(test_bitcoin_receiver))
receiver = Stripe::BitcoinReceiver.create
assert_equal "btcrcv_test_receiver", receiver.id
end
should "all should list bitcoin receivers" do
@mock.expects(:get).once.returns(test_response(test_bitcoin_receiver_array))
receivers = Stripe::BitcoinReceiver.all
assert_equal 3, receivers.data.length
assert receivers.data.kind_of? Array
receivers.each do |receiver|
assert receiver.kind_of?(Stripe::BitcoinReceiver)
end
end
end
end

View File

@ -381,6 +381,25 @@ module Stripe
})
end
def test_bitcoin_receiver(params={})
{
:id => 'btcrcv_test_receiver',
:amount => 100,
:currency => 'usd',
:description => 'some details',
:metadata => {},
:object => 'bitcoin_receiver'
}.merge(params)
end
def test_bitcoin_receiver_array
{
:data => [test_bitcoin_receiver, test_bitcoin_receiver, test_bitcoin_receiver],
:object => 'list',
:url => '/v1/bitcoin/receivers'
}
end
def test_invalid_api_key_error
{
:error => {