StripeMock - WIP
This gem is Incomplete!
Only Transfers is fully stubbed out.
Setup for Stripe API version 2015-07-07
Installation
Add this line to your application's Gemfile:
gem 'stripe_mock', require: false
And then execute:
$ bundle
Or install it yourself as:
$ gem install stripe_mock
How does StripeMock work?
StripeMock uses Webmock to hijack the request to the Stripe servers and return the corresponding Stripe response.
Setup
To capture requests to Strip simply add these lines to your spec file
before(:all) do
StripeMock.capture_requests
end
Mocked Requests
To get a mocked response, just use the Stripe gem as you normally would.
Stipe::Transfer.all
# #<Stripe::ListObject:0x3fe634d74498> JSON: {
# "object": "list",
# "url": "/v1/transfers",
# "has_more": false,
# "data": [
# #<Stripe::Transfer id=tr_16DA2VCKrsNpguPAW93AVKPk 0x00000a> JSON: {
# "id": "tr_16DA2VCKrsNpguPAW93AVKPk",
# "object": "transfer",
# "created": 1434184255,
# "date": 1434240000,
# ...
# },
# #<Stripe::Transfer[...] ...>,
# #<Stripe::Transfer[...] ...>
# ]
# }
Getting Transfer Failure Codes
To get the transfer failure_code filled in, just use the desired failure_code as the id of the transfer. EX:
Stripe::Transfer.retrieve('insufficient_funds')
All codes are listed here: https://stripe.com/docs/api/ruby#transfer_failures
Contributing
Bug reports and pull requests are welcome on GitHub at https://github.com/digitalopera/stripe_mock.
License
The gem is available as open source under the terms of the MIT License.