stripe 1.30.3 → 2.0.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.
- checksums.yaml +4 -4
- data/.gitattributes +4 -0
- data/.github/ISSUE_TEMPLATE.md +5 -0
- data/.travis.yml +3 -14
- data/Gemfile +28 -4
- data/History.txt +180 -0
- data/README.md +147 -0
- data/Rakefile +10 -0
- data/VERSION +1 -1
- data/bin/stripe-console +12 -5
- data/lib/data/ca-certificates.crt +3868 -5114
- data/lib/stripe/account.rb +43 -23
- data/lib/stripe/alipay_account.rb +20 -0
- data/lib/stripe/api_operations/create.rb +2 -2
- data/lib/stripe/api_operations/delete.rb +2 -2
- data/lib/stripe/api_operations/list.rb +2 -3
- data/lib/stripe/api_operations/request.rb +9 -3
- data/lib/stripe/api_operations/save.rb +85 -0
- data/lib/stripe/api_resource.rb +38 -5
- data/lib/stripe/apple_pay_domain.rb +12 -0
- data/lib/stripe/application_fee.rb +8 -8
- data/lib/stripe/application_fee_refund.rb +7 -3
- data/lib/stripe/balance_transaction.rb +1 -1
- data/lib/stripe/bank_account.rb +13 -4
- data/lib/stripe/bitcoin_receiver.rb +6 -6
- data/lib/stripe/bitcoin_transaction.rb +1 -1
- data/lib/stripe/card.rb +9 -5
- data/lib/stripe/charge.rb +38 -20
- data/lib/stripe/country_spec.rb +9 -0
- data/lib/stripe/coupon.rb +1 -1
- data/lib/stripe/customer.rb +12 -10
- data/lib/stripe/dispute.rb +4 -5
- data/lib/stripe/errors.rb +92 -0
- data/lib/stripe/file_upload.rb +1 -1
- data/lib/stripe/invoice.rb +7 -7
- data/lib/stripe/invoice_item.rb +1 -1
- data/lib/stripe/list_object.rb +8 -7
- data/lib/stripe/order.rb +12 -4
- data/lib/stripe/order_return.rb +9 -0
- data/lib/stripe/plan.rb +1 -1
- data/lib/stripe/product.rb +2 -10
- data/lib/stripe/recipient.rb +1 -1
- data/lib/stripe/refund.rb +1 -1
- data/lib/stripe/reversal.rb +7 -3
- data/lib/stripe/singleton_api_resource.rb +3 -3
- data/lib/stripe/sku.rb +2 -2
- data/lib/stripe/source.rb +11 -0
- data/lib/stripe/stripe_client.rb +396 -0
- data/lib/stripe/stripe_object.rb +167 -91
- data/lib/stripe/stripe_response.rb +48 -0
- data/lib/stripe/subscription.rb +15 -9
- data/lib/stripe/subscription_item.rb +12 -0
- data/lib/stripe/three_d_secure.rb +9 -0
- data/lib/stripe/transfer.rb +4 -5
- data/lib/stripe/util.rb +105 -33
- data/lib/stripe/version.rb +1 -1
- data/lib/stripe.rb +69 -266
- data/spec/fixtures.json +1409 -0
- data/spec/fixtures.yaml +1153 -0
- data/spec/spec.json +19949 -0
- data/spec/spec.yaml +15504 -0
- data/stripe.gemspec +5 -18
- data/test/api_fixtures.rb +29 -0
- data/test/api_stub_helpers.rb +125 -0
- data/test/stripe/account_test.rb +163 -211
- data/test/stripe/alipay_account_test.rb +19 -0
- data/test/stripe/api_operations_test.rb +31 -0
- data/test/stripe/api_resource_test.rb +174 -340
- data/test/stripe/apple_pay_domain_test.rb +33 -0
- data/test/stripe/application_fee_refund_test.rb +22 -31
- data/test/stripe/application_fee_test.rb +6 -14
- data/test/stripe/balance_test.rb +3 -3
- data/test/stripe/bank_account_test.rb +41 -0
- data/test/stripe/bitcoin_receiver_test.rb +51 -42
- data/test/stripe/bitcoin_transaction_test.rb +11 -19
- data/test/stripe/charge_test.rb +39 -98
- data/test/stripe/country_spec_test.rb +20 -0
- data/test/stripe/coupon_test.rb +35 -11
- data/test/stripe/customer_card_test.rb +25 -46
- data/test/stripe/customer_test.rb +89 -61
- data/test/stripe/dispute_test.rb +28 -31
- data/test/stripe/errors_test.rb +18 -0
- data/test/stripe/file_upload_test.rb +32 -24
- data/test/stripe/invoice_item_test.rb +55 -0
- data/test/stripe/invoice_test.rb +50 -24
- data/test/stripe/list_object_test.rb +57 -45
- data/test/stripe/order_return_test.rb +21 -0
- data/test/stripe/order_test.rb +41 -34
- data/test/stripe/plan_test.rb +52 -0
- data/test/stripe/product_test.rb +31 -25
- data/test/stripe/recipient_card_test.rb +23 -40
- data/test/stripe/recipient_test.rb +50 -0
- data/test/stripe/refund_test.rb +20 -36
- data/test/stripe/reversal_test.rb +27 -31
- data/test/stripe/sku_test.rb +39 -13
- data/test/stripe/source_test.rb +43 -0
- data/test/stripe/stripe_client_test.rb +428 -0
- data/test/stripe/stripe_object_test.rb +186 -13
- data/test/stripe/stripe_response_test.rb +46 -0
- data/test/stripe/subscription_item_test.rb +54 -0
- data/test/stripe/subscription_test.rb +40 -52
- data/test/stripe/three_d_secure_test.rb +23 -0
- data/test/stripe/transfer_test.rb +38 -13
- data/test/stripe/util_test.rb +48 -16
- data/test/stripe_test.rb +25 -0
- data/test/test_data.rb +5 -621
- data/test/test_helper.rb +24 -24
- metadata +60 -139
- data/README.rdoc +0 -68
- data/gemfiles/default-with-activesupport.gemfile +0 -10
- data/gemfiles/json.gemfile +0 -12
- data/gemfiles/yajl.gemfile +0 -12
- data/lib/stripe/api_operations/update.rb +0 -58
- data/lib/stripe/errors/api_connection_error.rb +0 -4
- data/lib/stripe/errors/api_error.rb +0 -4
- data/lib/stripe/errors/authentication_error.rb +0 -4
- data/lib/stripe/errors/card_error.rb +0 -12
- data/lib/stripe/errors/invalid_request_error.rb +0 -11
- data/lib/stripe/errors/rate_limit_error.rb +0 -4
- data/lib/stripe/errors/stripe_error.rb +0 -26
- data/test/stripe/charge_refund_test.rb +0 -55
- data/test/stripe/metadata_test.rb +0 -129
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: fe6ecafb3e94d2c21da1cad428be4ac9fda47ed9
|
4
|
+
data.tar.gz: d69bf4b5289a9661d3d8a9383bb4acea4cb2c0b9
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 381878036316652650840edfa24814e60b21ce6813a9e8cc4a5e58ff000349434d7947e63e51390d962d817755e0b40b68a1370781262b982cef93aa90296879
|
7
|
+
data.tar.gz: 9afa8b57e838b7a44264f302afbb2c9b62c40176dc699a17ff83fb5fe50c4c481f0cf7de3f83dd7c7ec70211dc466d5a22e290b3157cbb2ed34bc10562871bac
|
data/.gitattributes
ADDED
@@ -0,0 +1,5 @@
|
|
1
|
+
Please only file issues here that you believe represent actual bugs or feature requests for the Stripe Ruby library.
|
2
|
+
|
3
|
+
If you're having general trouble with your Stripe integration, please reach out to support using the form at https://support.stripe.com/ (preferred) or via email to support@stripe.com.
|
4
|
+
|
5
|
+
If you are reporting a bug, please include your Ruby version and the version of the Stripe Ruby library you're using, as well as any other details that may be helpful in reproducing the problem.
|
data/.travis.yml
CHANGED
@@ -1,23 +1,12 @@
|
|
1
1
|
language: ruby
|
2
2
|
|
3
3
|
rvm:
|
4
|
-
- 1.8.7
|
5
|
-
- 1.9.2
|
6
|
-
- 1.9.3
|
7
4
|
- 2.0.0
|
8
5
|
- 2.1
|
9
6
|
- 2.2
|
10
|
-
-
|
11
|
-
|
12
|
-
|
13
|
-
- gemfiles/default-with-activesupport.gemfile
|
14
|
-
- gemfiles/json.gemfile
|
15
|
-
- gemfiles/yajl.gemfile
|
16
|
-
|
17
|
-
matrix:
|
18
|
-
exclude:
|
19
|
-
- rvm: jruby-19mode
|
20
|
-
gemfile: gemfiles/yajl.gemfile
|
7
|
+
- 2.3.0
|
8
|
+
- 2.4.0
|
9
|
+
- jruby-9.0.5.0
|
21
10
|
|
22
11
|
notifications:
|
23
12
|
email:
|
data/Gemfile
CHANGED
@@ -1,8 +1,32 @@
|
|
1
1
|
source "https://rubygems.org"
|
2
|
+
|
2
3
|
gemspec
|
3
4
|
|
4
|
-
|
5
|
-
gem '
|
6
|
-
gem '
|
7
|
-
gem '
|
5
|
+
group :development do
|
6
|
+
gem 'committee', '2.0.0.pre6'
|
7
|
+
gem 'mocha', '~> 0.13.2'
|
8
|
+
gem 'rake'
|
9
|
+
gem 'shoulda-context'
|
10
|
+
gem 'sinatra'
|
11
|
+
gem 'test-unit'
|
12
|
+
gem 'webmock'
|
13
|
+
|
14
|
+
# Rack 2.0+ requires Ruby >= 2.2.2 which is problematic for the test suite on
|
15
|
+
# older Ruby versions. Check Ruby the version here and put a maximum
|
16
|
+
# constraint on Rack if necessary.
|
17
|
+
if RUBY_VERSION >= '2.2.2'
|
18
|
+
gem "rack", ">= 1.5"
|
19
|
+
else
|
20
|
+
gem "rack", ">= 1.5", "< 2.0"
|
21
|
+
end
|
22
|
+
|
23
|
+
platforms :mri do
|
24
|
+
# to avoid problems, bring Byebug in on just versions of Ruby under which
|
25
|
+
# it's known to work well
|
26
|
+
if Gem::Version.new(RUBY_VERSION.dup) >= Gem::Version.new('2.0.0')
|
27
|
+
gem 'byebug'
|
28
|
+
gem 'pry'
|
29
|
+
gem 'pry-byebug'
|
30
|
+
end
|
31
|
+
end
|
8
32
|
end
|
data/History.txt
CHANGED
@@ -1,3 +1,183 @@
|
|
1
|
+
=== 2.0.0 2017-02-14
|
2
|
+
|
3
|
+
* Drop support for Ruby 1.9
|
4
|
+
* Allow HTTP client that makes Stripe calls to be configured via Faraday
|
5
|
+
* Drop RestClient
|
6
|
+
* Switch to OpenAPI 2.0 spec and generated fixtures in test suite
|
7
|
+
* Switch to Webmock in test suite
|
8
|
+
|
9
|
+
=== 1.58.0 2017-01-19
|
10
|
+
|
11
|
+
* Remove erroneously added list methods for `Source` model
|
12
|
+
|
13
|
+
=== 1.57.1 2016-11-28
|
14
|
+
|
15
|
+
* Disallow sending protected fields along with API resource `.update`
|
16
|
+
|
17
|
+
=== 1.57.0 2016-11-21
|
18
|
+
|
19
|
+
* Add retrieve method for 3-D Secure resources
|
20
|
+
|
21
|
+
=== 1.56.2 2016-11-17
|
22
|
+
|
23
|
+
* Improve `StripeObject`'s `#to_s` to better handle how embedded objects are displayed
|
24
|
+
|
25
|
+
=== 1.56.1 2016-11-09
|
26
|
+
|
27
|
+
* Fix (fairly serious) memory like in `StripeObject`
|
28
|
+
|
29
|
+
=== 1.56.0 2016-10-24
|
30
|
+
|
31
|
+
* Add accessors for new fields added in `#update_attributes`
|
32
|
+
* Handle multi-plan subscriptions through new subscription items
|
33
|
+
* Handle 403 status codes from the API
|
34
|
+
|
35
|
+
=== 1.55.1 2016-10-24
|
36
|
+
|
37
|
+
Identical to 1.56.0 above. I incorrectly cut a patch-level release.
|
38
|
+
|
39
|
+
=== 1.55.0 2016-09-15
|
40
|
+
|
41
|
+
* Add support for Apple Pay domains
|
42
|
+
|
43
|
+
=== 1.54.0 2016-09-01
|
44
|
+
|
45
|
+
* Whitelist errors that should be retried; scope to known socket and HTTP errors
|
46
|
+
|
47
|
+
=== 1.53.0 2016-08-31
|
48
|
+
|
49
|
+
* Relax version constraint on rest-client (and by extension mime-types) for users on Ruby 2+
|
50
|
+
|
51
|
+
=== 1.52.0 2016-08-30
|
52
|
+
|
53
|
+
* Make sure `Subscription`'s `source` is saved with its parent
|
54
|
+
|
55
|
+
=== 1.51.1 2016-08-30
|
56
|
+
|
57
|
+
* Make sure `Account`'s `external_account` is saved with its parent
|
58
|
+
|
59
|
+
=== 1.51.0 2016-08-26
|
60
|
+
|
61
|
+
* Error when an array of maps is detected that cannot be accurately encoded
|
62
|
+
* Start using strings for header names instead of symbols for better clarity
|
63
|
+
|
64
|
+
=== 1.50.1 2016-08-25
|
65
|
+
|
66
|
+
* Fix encoding of arrays of maps where maps unequal sets of keys
|
67
|
+
|
68
|
+
=== 1.50.0 2016-08-15
|
69
|
+
|
70
|
+
* Allow sources to be created
|
71
|
+
|
72
|
+
=== 1.49.0 2016-07-28
|
73
|
+
|
74
|
+
* Add top-level `Source` model
|
75
|
+
|
76
|
+
=== 1.48.0 2016-07-12
|
77
|
+
|
78
|
+
* Add `ThreeDSecure` model for 3-D secure payments
|
79
|
+
|
80
|
+
=== 1.47.0 2016-07-11
|
81
|
+
|
82
|
+
* Allow rest-client version 2.0+ to be used with the gem
|
83
|
+
|
84
|
+
=== 1.46.0 2016-07-07
|
85
|
+
|
86
|
+
* Allow retry when a 409 conflict is encountered
|
87
|
+
|
88
|
+
=== 1.45.0 2016-07-07
|
89
|
+
|
90
|
+
* Do not send subresources when updating except when explicitly told to do so (see #433)
|
91
|
+
|
92
|
+
=== 1.44.0 2016-06-29
|
93
|
+
|
94
|
+
* Add `update` class method to all resources that can be updated
|
95
|
+
|
96
|
+
=== 1.43.1 2016-06-17
|
97
|
+
|
98
|
+
* Fix type of resource returned from `Order#return_order`
|
99
|
+
|
100
|
+
=== 1.43.0 2016-05-20
|
101
|
+
|
102
|
+
* Allow Relay orders to be returned and add associated types
|
103
|
+
* Support Alipay account retrieval and deletion
|
104
|
+
|
105
|
+
=== 1.42.0 2016-05-04
|
106
|
+
|
107
|
+
* Add support for the new /v1/subscriptions endpoint
|
108
|
+
* Stripe::Subscription.retrieve
|
109
|
+
* Stripe::Subscription.list
|
110
|
+
* Stripe::Subscription.create
|
111
|
+
* Stripe::Subscription.update
|
112
|
+
* Stripe::Subscription.delete
|
113
|
+
|
114
|
+
=== 1.41.0 2016-04-13
|
115
|
+
|
116
|
+
* Add global `stripe_account` option that adds a `Stripe-Account` header to all requests
|
117
|
+
|
118
|
+
=== 1.40.0 2016-04-06
|
119
|
+
|
120
|
+
* Fix bug that omitted subresources from serialization
|
121
|
+
|
122
|
+
=== 1.39.0 2016-03-31
|
123
|
+
|
124
|
+
* Update CA cert bundle for compatibility with OpenSSL versions below 1.0.1
|
125
|
+
|
126
|
+
=== 1.38.0 2016-03-18
|
127
|
+
|
128
|
+
* Allow `opts` to be passed to an API resource's `#save` method
|
129
|
+
|
130
|
+
=== 1.37.0 2016-03-14
|
131
|
+
|
132
|
+
* Add `Account#reject` to support the new API feature
|
133
|
+
|
134
|
+
=== 1.36.2 2016-03-14
|
135
|
+
|
136
|
+
* Fix reference to non-existent `#url` in `ListObject`
|
137
|
+
|
138
|
+
=== 1.36.1 2016-03-04
|
139
|
+
|
140
|
+
* Fix serialization when subhash given to `#save` or `#update_attributes`
|
141
|
+
|
142
|
+
=== 1.36.0 2016-02-08
|
143
|
+
|
144
|
+
* Add `CountrySpec` model for looking up country payment information
|
145
|
+
|
146
|
+
=== 1.35.1 2016-02-03
|
147
|
+
|
148
|
+
* Add compatibility layer for old API versions on `Charge#refund`
|
149
|
+
|
150
|
+
=== 1.35.0 2016-02-01
|
151
|
+
|
152
|
+
* Allow CA cert bundle location to be configured
|
153
|
+
* Updated bundled CA certs
|
154
|
+
|
155
|
+
=== 1.34.0 2016-01-25
|
156
|
+
|
157
|
+
* Add support for deleting products and SKUs
|
158
|
+
|
159
|
+
=== 1.33.1 2016-01-21
|
160
|
+
|
161
|
+
* Pass through arguments of `Charge#refund`
|
162
|
+
|
163
|
+
=== 1.33.0 2016-01-19
|
164
|
+
|
165
|
+
* Re-implement `Charge#refund` helper to use the modern endpoint suggested by docs
|
166
|
+
|
167
|
+
=== 1.32.1 2016-01-07
|
168
|
+
|
169
|
+
* Fix bug where ivar left uninitialized in StripeObject could error on serialization
|
170
|
+
* Fix bug where a nil customer from API could error Bitcoin model on refresh
|
171
|
+
|
172
|
+
=== 1.32.0 2016-01-05
|
173
|
+
|
174
|
+
* Add configuration to optionally retry network failures
|
175
|
+
* Use modern API endpoint for producing application fee refunds
|
176
|
+
|
177
|
+
=== 1.31.0 2015-10-29
|
178
|
+
|
179
|
+
* Add BankAccount#verify convenience method
|
180
|
+
|
1
181
|
=== 1.30.3 2015-10-28
|
2
182
|
|
3
183
|
* Fix bug where arrays that were not `additional_owners` were not properly encoded for requests
|
data/README.md
ADDED
@@ -0,0 +1,147 @@
|
|
1
|
+
# Stripe Ruby Bindings [](https://travis-ci.org/stripe/stripe-ruby)
|
2
|
+
|
3
|
+
The Stripe Ruby bindings provide a small SDK for convenient access to the
|
4
|
+
Stripe API from applications written in the Ruby language. It provides a
|
5
|
+
pre-defined set of classes for API resources that initialize themselves
|
6
|
+
dynamically from API responses which allows the bindings to tolerate a number
|
7
|
+
of different versions of the API.
|
8
|
+
|
9
|
+
The bindings also provide other features. For example:
|
10
|
+
|
11
|
+
* Easy configuration path for fast setup and use.
|
12
|
+
* Helpers for pagination.
|
13
|
+
* Tracking of "fresh" values in API resources so that partial updates can be
|
14
|
+
executed.
|
15
|
+
* Built-in mechanisms for the serialization of parameters according to the
|
16
|
+
expectations of Stripe's API.
|
17
|
+
|
18
|
+
## Documentation
|
19
|
+
|
20
|
+
See the [Ruby API docs](https://stripe.com/docs/api/ruby#intro).
|
21
|
+
|
22
|
+
## Installation
|
23
|
+
|
24
|
+
You don't need this source code unless you want to modify the gem. If you just
|
25
|
+
want to use the Stripe Ruby bindings, you should run:
|
26
|
+
|
27
|
+
gem install stripe
|
28
|
+
|
29
|
+
If you want to build the gem from source:
|
30
|
+
|
31
|
+
gem build stripe.gemspec
|
32
|
+
|
33
|
+
### Requirements
|
34
|
+
|
35
|
+
* Ruby 2.0+.
|
36
|
+
|
37
|
+
### Bundler
|
38
|
+
|
39
|
+
If you are installing via bundler, you should be sure to use the https rubygems
|
40
|
+
source in your Gemfile, as any gems fetched over http could potentially be
|
41
|
+
compromised in transit and alter the code of gems fetched securely over https:
|
42
|
+
|
43
|
+
``` ruby
|
44
|
+
source 'https://rubygems.org'
|
45
|
+
|
46
|
+
gem 'rails'
|
47
|
+
gem 'stripe'
|
48
|
+
```
|
49
|
+
|
50
|
+
## Usage
|
51
|
+
|
52
|
+
The library needs to be configured with your account's secret key which is
|
53
|
+
available in your [Stripe Dashboard][dashboard]. Set `Stripe.api_key` to its
|
54
|
+
value:
|
55
|
+
|
56
|
+
``` ruby
|
57
|
+
require "stripe"
|
58
|
+
Stripe.api_key = "sk_test_..."
|
59
|
+
|
60
|
+
# list charges
|
61
|
+
Stripe::Charge.list()
|
62
|
+
|
63
|
+
# retrieve single charge
|
64
|
+
Stripe::Charge.retrieve(
|
65
|
+
"ch_18atAXCdGbJFKhCuBAa4532Z",
|
66
|
+
)
|
67
|
+
```
|
68
|
+
|
69
|
+
### Per-request Configuration
|
70
|
+
|
71
|
+
For apps that need to use multiple keys during the lifetime of a process, like
|
72
|
+
one that uses [Stripe Connect][connect], it's also possible to set a
|
73
|
+
per-request key and/or account:
|
74
|
+
|
75
|
+
``` ruby
|
76
|
+
require "stripe"
|
77
|
+
|
78
|
+
Stripe::Charge.list(
|
79
|
+
{},
|
80
|
+
:api_key => "sk_test_...",
|
81
|
+
:stripe_account => "acct_..."
|
82
|
+
)
|
83
|
+
|
84
|
+
Stripe::Charge.retrieve(
|
85
|
+
"ch_18atAXCdGbJFKhCuBAa4532Z",
|
86
|
+
:api_key => "sk_test_...",
|
87
|
+
:stripe_account => "acct_..."
|
88
|
+
)
|
89
|
+
```
|
90
|
+
|
91
|
+
### Configuring a Client
|
92
|
+
|
93
|
+
While a default HTTP client is used by default, it's also possible to have the
|
94
|
+
library use any client supported by [Faraday][faraday] by initializing a
|
95
|
+
`Stripe::StripeClient` object and giving it a connection:
|
96
|
+
|
97
|
+
``` ruby
|
98
|
+
conn = Faraday.new
|
99
|
+
client = Stripe::StripeClient.new(conn)
|
100
|
+
client.request do
|
101
|
+
charge, resp = Stripe::Charge.retrieve(
|
102
|
+
"ch_18atAXCdGbJFKhCuBAa4532Z",
|
103
|
+
)
|
104
|
+
end
|
105
|
+
puts resp.request_id
|
106
|
+
```
|
107
|
+
|
108
|
+
### Configuring CA Bundles
|
109
|
+
|
110
|
+
By default, the library will use its own internal bundle of known CA
|
111
|
+
certificates, but it's possible to configure your own:
|
112
|
+
|
113
|
+
Stripe.ca_bundle_path = "path/to/ca/bundle"
|
114
|
+
|
115
|
+
### Configuring Automatic Retries
|
116
|
+
|
117
|
+
The library can be configured to automatically retry requests that fail due to
|
118
|
+
an intermittent network problem:
|
119
|
+
|
120
|
+
Stripe.max_network_retries = 2
|
121
|
+
|
122
|
+
[Idempotency keys][idempotency-keys] are added to requests to guarantee that
|
123
|
+
retries are safe.
|
124
|
+
|
125
|
+
## Development
|
126
|
+
|
127
|
+
Run all tests:
|
128
|
+
|
129
|
+
bundle exec rake
|
130
|
+
|
131
|
+
Run a single test suite:
|
132
|
+
|
133
|
+
bundle exec ruby -Ilib/ test/stripe/util_test.rb
|
134
|
+
|
135
|
+
Run a single test:
|
136
|
+
|
137
|
+
bundle exec ruby -Ilib/ test/stripe/util_test.rb -n /should.convert.names.to.symbols/
|
138
|
+
|
139
|
+
Update bundled CA certificates from the [Mozilla cURL release][curl]:
|
140
|
+
|
141
|
+
bundle exec rake update_certs
|
142
|
+
|
143
|
+
[connect]: https://stripe.com/connect
|
144
|
+
[curl]: http://curl.haxx.se/docs/caextract.html
|
145
|
+
[faraday]: https://github.com/lostisland/faraday
|
146
|
+
[idempotency-keys]: https://stripe.com/docs/api/ruby#idempotent_requests
|
147
|
+
[dashboard]: https://dashboard.stripe.com/account
|
data/Rakefile
CHANGED
@@ -5,3 +5,13 @@ task :default => [:test]
|
|
5
5
|
Rake::TestTask.new do |t|
|
6
6
|
t.pattern = './test/**/*_test.rb'
|
7
7
|
end
|
8
|
+
|
9
|
+
desc "update bundled certs"
|
10
|
+
task :update_certs do
|
11
|
+
require "restclient"
|
12
|
+
File.open(File.join(File.dirname(__FILE__), 'lib', 'data', 'ca-certificates.crt'), 'w') do |file|
|
13
|
+
resp = Faraday.get "https://raw.githubusercontent.com/bagder/ca-bundle/master/ca-bundle.crt"
|
14
|
+
abort("bad response when fetching bundle") unless resp.code == 200
|
15
|
+
file.write(resp.to_str)
|
16
|
+
end
|
17
|
+
end
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
2.0.0
|
data/bin/stripe-console
CHANGED
@@ -1,7 +1,14 @@
|
|
1
1
|
#!/usr/bin/env ruby
|
2
|
-
irb = RUBY_PLATFORM =~ /(:?mswin|mingw)/ ? 'irb.bat' : 'irb'
|
3
2
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
require 'irb'
|
4
|
+
require 'irb/completion'
|
5
|
+
|
6
|
+
require "#{File.dirname(__FILE__)}/../lib/stripe"
|
7
|
+
|
8
|
+
# Config IRB to enable --simple-prompt and auto indent
|
9
|
+
IRB.conf[:PROMPT_MODE] = :SIMPLE
|
10
|
+
IRB.conf[:AUTO_INDENT] = true
|
11
|
+
|
12
|
+
puts "Loaded gem 'stripe'"
|
13
|
+
|
14
|
+
IRB.start
|