stripe 1.21.0 → 1.22.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.travis.yml +7 -1
- data/History.txt +4 -0
- data/README.rdoc +4 -0
- data/VERSION +1 -1
- data/lib/stripe.rb +2 -1
- data/lib/stripe/bank_account.rb +19 -0
- data/lib/stripe/card.rb +3 -1
- data/lib/stripe/util.rb +1 -0
- data/lib/stripe/version.rb +1 -1
- data/test/stripe/account_test.rb +36 -0
- data/test/stripe/customer_card_test.rb +6 -0
- metadata +4 -3
data/.travis.yml
CHANGED
@@ -6,11 +6,17 @@ rvm:
|
|
6
6
|
- 1.9.3
|
7
7
|
- 2.0.0
|
8
8
|
- 2.1
|
9
|
-
- 2.2
|
9
|
+
- 2.2
|
10
|
+
- jruby-19mode
|
10
11
|
|
11
12
|
gemfile:
|
12
13
|
- gemfiles/default-with-activesupport.gemfile
|
13
14
|
- gemfiles/json.gemfile
|
14
15
|
- gemfiles/yajl.gemfile
|
15
16
|
|
17
|
+
matrix:
|
18
|
+
exclude:
|
19
|
+
- rvm: jruby-19mode
|
20
|
+
gemfile: gemfiles/yajl.gemfile
|
21
|
+
|
16
22
|
sudo: false
|
data/History.txt
CHANGED
data/README.rdoc
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
= Stripe Ruby bindings {<img src="https://travis-ci.org/stripe/stripe-ruby.svg?branch=master" alt="Build Status" />}[https://travis-ci.org/stripe/stripe-ruby] {<img src="https://gemnasium.com/stripe/stripe-ruby.png" alt="Dependency Status" />}[https://gemnasium.com/stripe/stripe-ruby]
|
2
2
|
|
3
|
+
== Documentation
|
4
|
+
|
5
|
+
{Ruby API Docs}[https://stripe.com/docs/api/ruby#intro]
|
6
|
+
|
3
7
|
== Installation
|
4
8
|
|
5
9
|
You don't need this source code unless you want to modify the gem. If
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.
|
1
|
+
1.22.0
|
data/lib/stripe.rb
CHANGED
@@ -39,6 +39,7 @@ require 'stripe/token'
|
|
39
39
|
require 'stripe/event'
|
40
40
|
require 'stripe/transfer'
|
41
41
|
require 'stripe/recipient'
|
42
|
+
require 'stripe/bank_account'
|
42
43
|
require 'stripe/card'
|
43
44
|
require 'stripe/subscription'
|
44
45
|
require 'stripe/application_fee'
|
@@ -96,12 +97,12 @@ module Stripe
|
|
96
97
|
request_opts = {:verify_ssl => OpenSSL::SSL::VERIFY_PEER,
|
97
98
|
:ssl_ca_file => @ssl_bundle_path}
|
98
99
|
else
|
100
|
+
request_opts = {:verify_ssl => false}
|
99
101
|
unless @verify_ssl_warned
|
100
102
|
@verify_ssl_warned = true
|
101
103
|
$stderr.puts("WARNING: Running without SSL cert verification. " \
|
102
104
|
"You should never do this in production. " \
|
103
105
|
"Execute 'Stripe.verify_ssl_certs = true' to enable verification.")
|
104
|
-
request_opts = {:verify_ssl => false}
|
105
106
|
end
|
106
107
|
end
|
107
108
|
|
@@ -0,0 +1,19 @@
|
|
1
|
+
module Stripe
|
2
|
+
class BankAccount < APIResource
|
3
|
+
include Stripe::APIOperations::Update
|
4
|
+
include Stripe::APIOperations::Delete
|
5
|
+
include Stripe::APIOperations::List
|
6
|
+
|
7
|
+
def url
|
8
|
+
if respond_to?(:customer)
|
9
|
+
"#{Customer.url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
|
10
|
+
elsif respond_to?(:account)
|
11
|
+
"#{Account.url}/#{CGI.escape(account)}/external_accounts/#{CGI.escape(id)}"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.retrieve(id, opts=nil)
|
16
|
+
raise NotImplementedError.new("Bank accounts cannot be retrieved without an account ID. Retrieve a bank account using account.external_accounts.retrieve('card_id')")
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
data/lib/stripe/card.rb
CHANGED
@@ -9,11 +9,13 @@ module Stripe
|
|
9
9
|
"#{Recipient.url}/#{CGI.escape(recipient)}/cards/#{CGI.escape(id)}"
|
10
10
|
elsif respond_to?(:customer)
|
11
11
|
"#{Customer.url}/#{CGI.escape(customer)}/sources/#{CGI.escape(id)}"
|
12
|
+
elsif respond_to?(:account)
|
13
|
+
"#{Account.url}/#{CGI.escape(account)}/external_accounts/#{CGI.escape(id)}"
|
12
14
|
end
|
13
15
|
end
|
14
16
|
|
15
17
|
def self.retrieve(id, opts=nil)
|
16
|
-
raise NotImplementedError.new("Cards cannot be retrieved without a customer ID. Retrieve a card using customer.
|
18
|
+
raise NotImplementedError.new("Cards cannot be retrieved without a customer ID. Retrieve a card using customer.sources.retrieve('card_id')")
|
17
19
|
end
|
18
20
|
end
|
19
21
|
end
|
data/lib/stripe/util.rb
CHANGED
data/lib/stripe/version.rb
CHANGED
data/test/stripe/account_test.rb
CHANGED
@@ -78,5 +78,41 @@ module Stripe
|
|
78
78
|
Stripe::Account.retrieve(:api_key => nil)
|
79
79
|
end
|
80
80
|
end
|
81
|
+
|
82
|
+
should "be able to create a bank account" do
|
83
|
+
resp = {
|
84
|
+
:id => 'acct_1234',
|
85
|
+
:external_accounts => {
|
86
|
+
:object => "list",
|
87
|
+
:url => "/v1/accounts/acct_1234/external_accounts",
|
88
|
+
:data => [],
|
89
|
+
}
|
90
|
+
}
|
91
|
+
@mock.expects(:get).once.returns(test_response(resp))
|
92
|
+
a = Stripe::Account.retrieve
|
93
|
+
|
94
|
+
@mock.expects(:post).
|
95
|
+
once.
|
96
|
+
with('https://api.stripe.com/v1/accounts/acct_1234/external_accounts', nil, 'external_account=btok_1234').
|
97
|
+
returns(test_response(resp))
|
98
|
+
a.external_accounts.create({:external_account => 'btok_1234'})
|
99
|
+
end
|
100
|
+
|
101
|
+
should "be able to retrieve a bank account" do
|
102
|
+
resp = {
|
103
|
+
:id => 'acct_1234',
|
104
|
+
:external_accounts => {
|
105
|
+
:object => "list",
|
106
|
+
:url => "/v1/accounts/acct_1234/external_accounts",
|
107
|
+
:data => [{
|
108
|
+
:id => "ba_1234",
|
109
|
+
:object => "bank_account",
|
110
|
+
}],
|
111
|
+
}
|
112
|
+
}
|
113
|
+
@mock.expects(:get).once.returns(test_response(resp))
|
114
|
+
a = Stripe::Account.retrieve
|
115
|
+
assert_equal(BankAccount, a.external_accounts.data[0].class)
|
116
|
+
end
|
81
117
|
end
|
82
118
|
end
|
@@ -53,5 +53,11 @@ module Stripe
|
|
53
53
|
card = c.sources.create(:source => "tok_41YJ05ijAaWaFS")
|
54
54
|
assert_equal "test_card", card.id
|
55
55
|
end
|
56
|
+
|
57
|
+
should "raise if accessing Stripe::Card.retrieve directly" do
|
58
|
+
assert_raises NotImplementedError do
|
59
|
+
Stripe::Card.retrieve "card_12345"
|
60
|
+
end
|
61
|
+
end
|
56
62
|
end
|
57
63
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: stripe
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.22.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2015-
|
13
|
+
date: 2015-06-11 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: rest-client
|
@@ -144,6 +144,7 @@ files:
|
|
144
144
|
- lib/stripe/application_fee_refund.rb
|
145
145
|
- lib/stripe/balance.rb
|
146
146
|
- lib/stripe/balance_transaction.rb
|
147
|
+
- lib/stripe/bank_account.rb
|
147
148
|
- lib/stripe/bitcoin_receiver.rb
|
148
149
|
- lib/stripe/bitcoin_transaction.rb
|
149
150
|
- lib/stripe/card.rb
|
@@ -217,7 +218,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
217
218
|
version: '0'
|
218
219
|
requirements: []
|
219
220
|
rubyforge_project:
|
220
|
-
rubygems_version: 1.8.23
|
221
|
+
rubygems_version: 1.8.23
|
221
222
|
signing_key:
|
222
223
|
specification_version: 3
|
223
224
|
summary: Ruby bindings for the Stripe API
|