stripe-rails 1.10.1 → 2.2.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.
@@ -12,9 +12,10 @@ describe "Configuring the stripe engine" do
12
12
  def rerun_initializers!; initializers.each{|init| init.run(app) }; end
13
13
 
14
14
  after do
15
- Stripe.api_version = nil
16
- Stripe.api_base = 'https://api.stripe.com'
17
- Stripe.api_key = 'XYZ'
15
+ Stripe.api_version = nil
16
+ Stripe.api_base = 'https://api.stripe.com'
17
+ Stripe.api_key = 'XYZ'
18
+ ENV['STRIPE_SECRET_KEY'] = 'XYZ'
18
19
  end
19
20
 
20
21
  describe 'Stripe configurations' do
@@ -40,7 +41,7 @@ describe "Configuring the stripe engine" do
40
41
  app.config.stripe.open_timeout = 33
41
42
  app.config.stripe.read_timeout = 88
42
43
  rerun_initializers!
43
- end
44
+ end
44
45
 
45
46
  it "reads values that is set in the environment" do
46
47
  subject
@@ -56,6 +57,16 @@ describe "Configuring the stripe engine" do
56
57
  _(app.config.stripe.signing_secrets.length).must_equal 1
57
58
  end
58
59
 
60
+ it "supports nil signing_secret" do
61
+ subject
62
+
63
+ app.config.stripe.signing_secret = nil
64
+ rerun_initializers!
65
+
66
+ _(app.config.stripe.signing_secret).must_equal nil
67
+ _(app.config.stripe.signing_secrets).must_equal nil
68
+ end
69
+
59
70
  it "supports multiple signing secrets" do
60
71
  subject
61
72
 
@@ -90,4 +101,36 @@ describe "Configuring the stripe engine" do
90
101
  _(-> { subject }).must_output '', warning_msg
91
102
  end
92
103
  end
104
+
105
+ describe 'missing stripe.secret_key' do
106
+ subject do
107
+ ENV['STRIPE_SECRET_KEY'] = nil
108
+ Stripe.api_key = nil
109
+ app.config.stripe.secret_key = nil
110
+ rerun_initializers!
111
+ end
112
+ let(:warning_msg) { /No stripe.com API key was configured for environment test!/ }
113
+
114
+ it 'should output a warning' do
115
+ _(-> { subject }).must_output '', warning_msg
116
+ end
117
+ end
118
+
119
+ describe 'stripe.ignore_missing_secret_key' do
120
+ subject do
121
+ ENV['STRIPE_SECRET_KEY'] = nil
122
+ Stripe.api_key = nil
123
+ app.config.stripe.secret_key = nil
124
+ app.config.stripe.ignore_missing_secret_key = true
125
+ rerun_initializers!
126
+ end
127
+
128
+ after do
129
+ app.config.stripe.ignore_missing_secret_key = false
130
+ end
131
+
132
+ it 'should not output a warning' do
133
+ _(-> { subject }).must_output '', ''
134
+ end
135
+ end
93
136
  end
@@ -1,8 +1,3 @@
1
- require File.expand_path("null_system_test_case", __dir__)
2
-
3
- # For Rails 4 compat
4
- SystemTestCaseKlass = defined?(ActionDispatch::SystemTestCase) ? ActionDispatch::SystemTestCase : NullSystemTestCase
5
-
6
- class ApplicationSystemTestCase < SystemTestCaseKlass
1
+ class ApplicationSystemTestCase < ActionDispatch::SystemTestCase
7
2
  driven_by :selenium_chrome_headless
8
- end
3
+ end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stripe-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.1
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Charles Lowell
8
8
  - Nola Stowe
9
9
  - SengMing Tan
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2020-05-29 00:00:00.000000000 Z
13
+ date: 2020-12-06 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
@@ -18,28 +18,28 @@ dependencies:
18
18
  requirements:
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: '3'
21
+ version: '5.1'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
- version: '3'
28
+ version: '5.1'
29
29
  - !ruby/object:Gem::Dependency
30
30
  name: stripe
31
31
  requirement: !ruby/object:Gem::Requirement
32
32
  requirements:
33
33
  - - ">="
34
34
  - !ruby/object:Gem::Version
35
- version: 1.36.2
35
+ version: 3.15.0
36
36
  type: :runtime
37
37
  prerelease: false
38
38
  version_requirements: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - ">="
41
41
  - !ruby/object:Gem::Version
42
- version: 1.36.2
42
+ version: 3.15.0
43
43
  - !ruby/object:Gem::Dependency
44
44
  name: responders
45
45
  requirement: !ruby/object:Gem::Requirement
@@ -78,21 +78,19 @@ files:
78
78
  - app/assets/stripe/stripe_elements.js
79
79
  - app/controllers/stripe/application_controller.rb
80
80
  - app/controllers/stripe/events_controller.rb
81
- - app/controllers/stripe/pings_controller.rb
82
81
  - app/helpers/stripe/javascript_helper.rb
83
82
  - app/models/stripe/event_dispatch.rb
84
- - app/models/stripe/ping.rb
85
83
  - app/views/stripe/_elements.html.erb
86
84
  - app/views/stripe/_elements_js.html.erb
87
85
  - app/views/stripe/_js.html.erb
88
86
  - config/locales/en.yml
89
87
  - config/routes.rb
90
- - gemfiles/rails4.gemfile
91
88
  - gemfiles/rails51.gemfile
92
89
  - gemfiles/rails52.gemfile
93
90
  - lib/generators/stripe/install_generator.rb
94
91
  - lib/generators/templates/coupons.rb
95
92
  - lib/generators/templates/plans.rb
93
+ - lib/generators/templates/prices.rb
96
94
  - lib/generators/templates/products.rb
97
95
  - lib/stripe-rails.rb
98
96
  - lib/stripe/billing_tier.rb
@@ -103,6 +101,7 @@ files:
103
101
  - lib/stripe/current_api_version.rb
104
102
  - lib/stripe/engine.rb
105
103
  - lib/stripe/plans.rb
104
+ - lib/stripe/prices.rb
106
105
  - lib/stripe/products.rb
107
106
  - lib/stripe/rails.rb
108
107
  - lib/stripe/rails/tasks.rake
@@ -141,6 +140,7 @@ files:
141
140
  - test/dummy/config/locales/en.yml
142
141
  - test/dummy/config/routes.rb
143
142
  - test/dummy/config/stripe/plans.rb
143
+ - test/dummy/config/stripe/prices.rb
144
144
  - test/dummy/lib/assets/.gitkeep
145
145
  - test/dummy/lib/dummy/module_with_callbacks.rb
146
146
  - test/dummy/log/.gitkeep
@@ -156,23 +156,23 @@ files:
156
156
  - test/fixtures/stripe_plans.json
157
157
  - test/fixtures/stripe_plans_headers.json
158
158
  - test/fixtures/stripe_plans_headers_2017.json
159
+ - test/fixtures/stripe_prices.json
159
160
  - test/invoice.json
160
161
  - test/javascript_helper_spec.rb
161
- - test/pings_controller_spec.rb
162
162
  - test/plan_builder_spec.rb
163
+ - test/price_builder_spec.rb
163
164
  - test/product_builder_spec.rb
164
165
  - test/spec_helper.rb
165
166
  - test/stripe_initializers_spec.rb
166
167
  - test/support/application_system_test_case.rb
167
168
  - test/support/callback_helpers.rb
168
169
  - test/support/fixture_loader.rb
169
- - test/support/null_system_test_case.rb
170
170
  - test/testing_spec.rb
171
171
  homepage: https://github.com/tansengming/stripe-rails
172
172
  licenses:
173
173
  - MIT
174
174
  metadata: {}
175
- post_install_message:
175
+ post_install_message:
176
176
  rdoc_options: []
177
177
  require_paths:
178
178
  - lib
@@ -187,8 +187,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
187
187
  - !ruby/object:Gem::Version
188
188
  version: '0'
189
189
  requirements: []
190
- rubygems_version: 3.1.2
191
- signing_key:
190
+ rubygems_version: 3.1.4
191
+ signing_key:
192
192
  specification_version: 4
193
193
  summary: A gem to integrate stripe into your rails app
194
194
  test_files:
@@ -224,6 +224,7 @@ test_files:
224
224
  - test/dummy/config/locales/en.yml
225
225
  - test/dummy/config/routes.rb
226
226
  - test/dummy/config/stripe/plans.rb
227
+ - test/dummy/config/stripe/prices.rb
227
228
  - test/dummy/lib/assets/.gitkeep
228
229
  - test/dummy/lib/dummy/module_with_callbacks.rb
229
230
  - test/dummy/log/.gitkeep
@@ -239,15 +240,15 @@ test_files:
239
240
  - test/fixtures/stripe_plans.json
240
241
  - test/fixtures/stripe_plans_headers.json
241
242
  - test/fixtures/stripe_plans_headers_2017.json
243
+ - test/fixtures/stripe_prices.json
242
244
  - test/invoice.json
243
245
  - test/javascript_helper_spec.rb
244
- - test/pings_controller_spec.rb
245
246
  - test/plan_builder_spec.rb
247
+ - test/price_builder_spec.rb
246
248
  - test/product_builder_spec.rb
247
249
  - test/spec_helper.rb
248
250
  - test/stripe_initializers_spec.rb
249
251
  - test/support/application_system_test_case.rb
250
252
  - test/support/callback_helpers.rb
251
253
  - test/support/fixture_loader.rb
252
- - test/support/null_system_test_case.rb
253
254
  - test/testing_spec.rb
@@ -1,10 +0,0 @@
1
- module Stripe
2
- class PingsController < ::Stripe::ApplicationController
3
- respond_to :json
4
-
5
- def show
6
- @ping = Ping.new
7
- respond_with @ping
8
- end
9
- end
10
- end
@@ -1,9 +0,0 @@
1
- module Stripe
2
- class Ping
3
- attr_reader :message
4
-
5
- def initialize
6
- @message = "Your sound card works perfectly!"
7
- end
8
- end
9
- end
@@ -1,20 +0,0 @@
1
- source :rubygems
2
-
3
- gem 'rails', '~> 4.2'
4
- gem 'sprockets', '< 4'
5
-
6
- gem 'rake'
7
- gem 'responders', '~> 2.0' # to support Rails 4.2
8
- gem 'stripe'
9
-
10
- group :test do
11
- gem 'mocha'
12
- gem 'simplecov', require: false
13
- gem 'stripe-ruby-mock'
14
- gem 'webmock'
15
- # Required for system tests
16
- gem 'capybara'
17
- gem 'webdrivers'
18
- gem 'puma'
19
- gem 'selenium-webdriver'
20
- end
@@ -1,18 +0,0 @@
1
- require 'spec_helper'
2
-
3
- describe Stripe::PingsController do
4
- parallelize_me!
5
- include Rack::Test::Methods
6
-
7
- let(:app) { Rails.application }
8
- before do
9
- header 'Accept', 'application/json'
10
- header 'Content-Type', 'application/json'
11
- end
12
-
13
- describe 'the ping interface' do
14
- subject { get '/stripe/ping' }
15
-
16
- it { _(subject).must_be :ok? }
17
- end
18
- end
@@ -1,11 +0,0 @@
1
- class NullSystemTestCase
2
- def self.driven_by(*_)
3
- end
4
-
5
- def self.setup
6
- end
7
-
8
- def self.test(_)
9
- warn 'WARNING: Skipping system test because this version of Rails does not support it!'
10
- end
11
- end