fake_stripe, a Stripe fake
This library is a way to test Stripe code without hitting Stripe's servers. It uses Capybara::Server and Webmock to intercept all of the calls from Stripe's Ruby library and returns JSON that the Stripe library can parse.
fake_stripe Gem to the
:test group in your Gemfile:
# Gemfile group :test do gem 'fake_stripe' end
Remember to run
Rails 5 Compatibility
fake_stripe depends on Sinatra, which is currently in the process of being
upgraded to use Rack 2.0, a requirement for compatibility with Rails 5. This
should be resolved once Sinatra 2.0 is officially released; in the meantime,
you can add
gem 'sinatra', '2.0.0.beta2' to the
:test group in your Gemfile.
STRIPE_JS_HOST constant in an initializer:
# config/initializers/stripe.rb Stripe.api_key = ENV['STRIPE_API_KEY'] unless defined? = 'https://js.stripe.com' end
If you're using Stripe.js v1:
Or if you're using Stripe.js v2:
When the test suite runs
fake_stripe will override the address for
STRIPE_JS_HOST and serve up a local version of Stripe.js.
Require the library in your spec support:
# spec/support/fake_stripe.rb require 'fake_stripe' RSpec.configure do |config| config.before(:each) do . end end
Please see CONTRIBUTING.md for more details.