spree_gateway 3.7.4 → 3.9.3
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/.travis.yml +36 -37
- data/Appraisals +3 -8
- data/app/models/spree/check.rb +41 -0
- data/app/models/spree/credit_card_decorator.rb +10 -0
- data/app/models/spree/gateway/stripe_ach_gateway.rb +60 -0
- data/app/models/spree/gateway/stripe_elements_gateway.rb +50 -0
- data/app/models/spree/gateway/stripe_gateway.rb +1 -0
- data/app/models/spree/order_decorator.rb +28 -0
- data/app/models/spree/payment_decorator.rb +36 -0
- data/app/views/spree/checkout/_payment_confirm.html.erb +39 -0
- data/config/initializers/spree_permitted_attributes.rb +5 -0
- data/config/locales/en.yml +23 -0
- data/config/routes.rb +12 -0
- data/db/migrate/20200317135551_add_spree_check_payment_source.rb +22 -0
- data/db/migrate/20200422114908_add_intent_key_to_payment.rb +5 -0
- data/gemfiles/{spree_3_5.gemfile → spree_4_1.gemfile} +1 -1
- data/lib/active_merchant/billing/stripe_gateway_decorator.rb +13 -0
- data/lib/controllers/spree/api/v2/storefront/intents_controller.rb +27 -0
- data/lib/spree_frontend/controllers/spree/checkout_controller_decorator.rb +19 -0
- data/lib/spree_gateway/engine.rb +8 -0
- data/lib/spree_gateway/version.rb +1 -1
- data/lib/views/backend/spree/admin/payments/source_forms/_stripe_ach.html.erb +86 -0
- data/lib/views/backend/spree/admin/payments/source_forms/_stripe_apple_pay.html.erb +0 -0
- data/lib/views/backend/spree/admin/payments/source_views/_stripe_ach.html.erb +21 -0
- data/lib/views/backend/spree/admin/payments/source_views/_stripe_apple_pay.html.erb +1 -0
- data/lib/views/frontend/spree/checkout/payment/_stripe_ach.html.erb +81 -0
- data/lib/views/frontend/spree/checkout/payment/_stripe_ach_verify.html.erb +16 -0
- data/lib/views/frontend/spree/checkout/payment/_stripe_apple_pay.html.erb +10 -1
- data/lib/views/frontend/spree/checkout/payment/_stripe_elements.html.erb +2 -1
- data/spec/factories/check_factory.rb +10 -0
- data/spec/features/admin/stripe_elements_payment_spec.rb +32 -32
- data/spec/features/stripe_checkout_spec.rb +30 -19
- data/spec/features/stripe_elements_3ds_checkout_spec.rb +224 -0
- data/spec/models/gateway/stripe_ach_gateway_spec.rb +186 -0
- data/spec/models/gateway/stripe_gateway_spec.rb +1 -0
- data/spec/spec_helper.rb +7 -65
- data/spec/support/order_walktrough.rb +73 -0
- data/spec/support/within_stripe_3ds_popup.rb +10 -0
- data/spree_gateway.gemspec +10 -22
- metadata +44 -282
- data/gemfiles/spree_4_0.gemfile +0 -8
- data/spec/support/capybara_helper.rb +0 -15
@@ -182,6 +182,7 @@ describe Spree::Gateway::StripeGateway do
|
|
182
182
|
|
183
183
|
let!(:success_response) do
|
184
184
|
double('success_response', :success? => true,
|
185
|
+
:params => {},
|
185
186
|
:authorization => '123',
|
186
187
|
:avs_result => { 'code' => 'avs-code' },
|
187
188
|
:cvv_result => { 'code' => 'cvv-code', 'message' => "CVV Result"})
|
data/spec/spec_helper.rb
CHANGED
@@ -1,68 +1,10 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
# Configure Rails Environment
|
2
|
+
ENV['RAILS_ENV'] = 'test'
|
3
3
|
|
4
|
-
|
4
|
+
require File.expand_path('../dummy/config/environment.rb', __FILE__)
|
5
5
|
|
6
|
-
require
|
6
|
+
require 'spree_dev_tools/rspec/spec_helper'
|
7
7
|
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
require 'capybara/rails'
|
12
|
-
require 'capybara-screenshot/rspec'
|
13
|
-
require "selenium-webdriver"
|
14
|
-
require 'webdrivers'
|
15
|
-
require 'database_cleaner'
|
16
|
-
require 'ffaker'
|
17
|
-
require 'rspec/active_model/mocks'
|
18
|
-
require 'pry'
|
19
|
-
|
20
|
-
Dir[File.join(File.dirname(__FILE__), "support", "**", "*.rb")].each { |f| require f }
|
21
|
-
|
22
|
-
require 'spree/testing_support/factories'
|
23
|
-
require 'spree/testing_support/order_walkthrough'
|
24
|
-
require 'spree/testing_support/preferences'
|
25
|
-
require 'spree/testing_support/capybara_ext'
|
26
|
-
require 'spree/testing_support/authorization_helpers'
|
27
|
-
|
28
|
-
FactoryBot.find_definitions
|
29
|
-
|
30
|
-
RSpec.configure do |config|
|
31
|
-
config.infer_spec_type_from_file_location!
|
32
|
-
config.mock_with :rspec do |mock|
|
33
|
-
mock.syntax = [:should, :expect]
|
34
|
-
end
|
35
|
-
config.raise_errors_for_deprecations!
|
36
|
-
config.use_transactional_fixtures = false
|
37
|
-
#config.filter_run focus: true
|
38
|
-
#config.filter_run_excluding slow: true
|
39
|
-
|
40
|
-
config.include FactoryBot::Syntax::Methods
|
41
|
-
config.include Spree::TestingSupport::Preferences
|
42
|
-
|
43
|
-
config.before :suite do
|
44
|
-
DatabaseCleaner.strategy = :transaction
|
45
|
-
DatabaseCleaner.clean_with :truncation
|
46
|
-
end
|
47
|
-
|
48
|
-
config.before do
|
49
|
-
DatabaseCleaner.strategy = RSpec.current_example.metadata[:js] ? :truncation : :transaction
|
50
|
-
DatabaseCleaner.start
|
51
|
-
reset_spree_preferences
|
52
|
-
create(:store)
|
53
|
-
end
|
54
|
-
|
55
|
-
config.after do
|
56
|
-
DatabaseCleaner.clean
|
57
|
-
end
|
58
|
-
|
59
|
-
Capybara.register_driver :chrome do |app|
|
60
|
-
Capybara::Selenium::Driver.new app,
|
61
|
-
browser: :chrome,
|
62
|
-
options: Selenium::WebDriver::Chrome::Options.new(
|
63
|
-
args: %w[no-sandbox disable-dev-shm-usage disable-popup-blocking headless disable-gpu window-size=1920,1080 --enable-features=NetworkService,NetworkServiceInProcess --disable-features=VizDisplayCompositor],
|
64
|
-
log_level: :error
|
65
|
-
)
|
66
|
-
end
|
67
|
-
Capybara.javascript_driver = :chrome
|
68
|
-
end
|
8
|
+
# Requires supporting ruby files with custom matchers and macros, etc,
|
9
|
+
# in spec/support/ and its subdirectories.
|
10
|
+
Dir[File.join(File.dirname(__FILE__), 'support/**/*.rb')].sort.each { |f| require f }
|
@@ -0,0 +1,73 @@
|
|
1
|
+
class OrderWalkthrough
|
2
|
+
def self.up_to(state)
|
3
|
+
# A default store must exist to provide store settings
|
4
|
+
store = Spree::Store.default || FactoryBot.create(:store, default: true)
|
5
|
+
|
6
|
+
# A payment method must exist for an order to proceed through the Address state
|
7
|
+
unless Spree::PaymentMethod.exists?
|
8
|
+
FactoryBot.create(:check_payment_method)
|
9
|
+
end
|
10
|
+
|
11
|
+
# Need to create a valid zone too...
|
12
|
+
zone = FactoryBot.create(:zone)
|
13
|
+
country = FactoryBot.create(:country)
|
14
|
+
zone.members << Spree::ZoneMember.create(zoneable: country)
|
15
|
+
country.states << FactoryBot.create(:state, country: country)
|
16
|
+
|
17
|
+
# A shipping method must exist for rates to be displayed on checkout page
|
18
|
+
unless Spree::ShippingMethod.exists?
|
19
|
+
FactoryBot.create(:shipping_method).tap do |sm|
|
20
|
+
sm.calculator.preferred_amount = 10
|
21
|
+
sm.calculator.preferred_currency = store.default_currency
|
22
|
+
sm.calculator.save
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
order = Spree::Order.create!(email: 'spree@example.com')
|
27
|
+
add_line_item!(order)
|
28
|
+
order.next!
|
29
|
+
|
30
|
+
end_state_position = states.index(state.to_sym)
|
31
|
+
states[0...end_state_position].each do |state|
|
32
|
+
send(state, order)
|
33
|
+
end
|
34
|
+
|
35
|
+
order
|
36
|
+
end
|
37
|
+
|
38
|
+
private
|
39
|
+
|
40
|
+
def self.add_line_item!(order)
|
41
|
+
FactoryBot.create(:line_item, order: order)
|
42
|
+
order.reload
|
43
|
+
end
|
44
|
+
|
45
|
+
def self.address(order)
|
46
|
+
order.bill_address = FactoryBot.create(:address, country_id: Spree::Zone.global.members.first.zoneable.id)
|
47
|
+
order.ship_address = FactoryBot.create(:address, country_id: Spree::Zone.global.members.first.zoneable.id)
|
48
|
+
order.next!
|
49
|
+
end
|
50
|
+
|
51
|
+
def self.delivery(order)
|
52
|
+
order.next!
|
53
|
+
end
|
54
|
+
|
55
|
+
def self.payment(order)
|
56
|
+
FactoryBot.create :payment,
|
57
|
+
order: order,
|
58
|
+
payment_method: Spree::PaymentMethod.first,
|
59
|
+
amount: order.total
|
60
|
+
|
61
|
+
# TODO: maybe look at some way of making this payment_state change automatic
|
62
|
+
order.payment_state = 'paid'
|
63
|
+
order.next!
|
64
|
+
end
|
65
|
+
|
66
|
+
def self.complete(_order)
|
67
|
+
# noop?
|
68
|
+
end
|
69
|
+
|
70
|
+
def self.states
|
71
|
+
[:address, :delivery, :payment, :complete]
|
72
|
+
end
|
73
|
+
end
|
data/spree_gateway.gemspec
CHANGED
@@ -16,35 +16,23 @@ Gem::Specification.new do |s|
|
|
16
16
|
s.homepage = 'https://spreecommerce.org'
|
17
17
|
s.license = 'BSD-3-Clause'
|
18
18
|
|
19
|
+
s.metadata = {
|
20
|
+
"bug_tracker_uri" => "https://github.com/spree/spree_gateway/issues",
|
21
|
+
"changelog_uri" => "https://github.com/spree/spree_gateway/releases/tag/v#{s.version}",
|
22
|
+
"documentation_uri" => "https://guides.spreecommerce.org/",
|
23
|
+
"source_code_uri" => "https://github.com/spree/spree_gateway/tree/v#{s.version}",
|
24
|
+
}
|
25
|
+
|
19
26
|
s.files = `git ls-files`.split("\n")
|
20
27
|
s.test_files = `git ls-files -- spec/*`.split("\n")
|
21
28
|
s.require_path = 'lib'
|
22
29
|
s.requirements << 'none'
|
23
30
|
|
24
|
-
spree_version = '>= 3.
|
31
|
+
spree_version = '>= 3.7.0', '< 5.0'
|
25
32
|
s.add_dependency 'spree_core', spree_version
|
26
33
|
s.add_dependency 'spree_extension'
|
27
34
|
|
28
|
-
s.add_development_dependency '
|
29
|
-
s.add_development_dependency 'bootstrap-sass'
|
30
|
-
s.add_development_dependency 'braintree'
|
31
|
-
s.add_development_dependency 'capybara'
|
32
|
-
s.add_development_dependency 'capybara-screenshot'
|
33
|
-
s.add_development_dependency 'coffee-rails'
|
34
|
-
s.add_development_dependency 'database_cleaner'
|
35
|
-
s.add_development_dependency 'factory_bot', '~> 4.7'
|
36
|
-
s.add_development_dependency 'ffaker'
|
37
|
-
s.add_development_dependency 'guard-rspec'
|
38
|
-
s.add_development_dependency 'launchy'
|
39
|
-
s.add_development_dependency 'mysql2'
|
40
|
-
s.add_development_dependency 'pg'
|
41
|
-
s.add_development_dependency 'pry'
|
42
|
-
s.add_development_dependency 'puma'
|
35
|
+
s.add_development_dependency 'braintree', '~>2.78'
|
43
36
|
s.add_development_dependency 'rspec-activemodel-mocks'
|
44
|
-
s.add_development_dependency '
|
45
|
-
s.add_development_dependency 'sass-rails'
|
46
|
-
s.add_development_dependency 'selenium-webdriver'
|
47
|
-
s.add_development_dependency 'webdrivers'
|
48
|
-
s.add_development_dependency 'simplecov'
|
49
|
-
s.add_development_dependency 'sqlite3'
|
37
|
+
s.add_development_dependency 'spree_dev_tools'
|
50
38
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: spree_gateway
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.9.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Spree Commerce
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: spree_core
|
@@ -16,7 +16,7 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 3.
|
19
|
+
version: 3.7.0
|
20
20
|
- - "<"
|
21
21
|
- !ruby/object:Gem::Version
|
22
22
|
version: '5.0'
|
@@ -26,7 +26,7 @@ dependencies:
|
|
26
26
|
requirements:
|
27
27
|
- - ">="
|
28
28
|
- !ruby/object:Gem::Version
|
29
|
-
version: 3.
|
29
|
+
version: 3.7.0
|
30
30
|
- - "<"
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: '5.0'
|
@@ -44,216 +44,20 @@ dependencies:
|
|
44
44
|
- - ">="
|
45
45
|
- !ruby/object:Gem::Version
|
46
46
|
version: '0'
|
47
|
-
- !ruby/object:Gem::Dependency
|
48
|
-
name: appraisal
|
49
|
-
requirement: !ruby/object:Gem::Requirement
|
50
|
-
requirements:
|
51
|
-
- - ">="
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
requirements:
|
58
|
-
- - ">="
|
59
|
-
- !ruby/object:Gem::Version
|
60
|
-
version: '0'
|
61
|
-
- !ruby/object:Gem::Dependency
|
62
|
-
name: bootstrap-sass
|
63
|
-
requirement: !ruby/object:Gem::Requirement
|
64
|
-
requirements:
|
65
|
-
- - ">="
|
66
|
-
- !ruby/object:Gem::Version
|
67
|
-
version: '0'
|
68
|
-
type: :development
|
69
|
-
prerelease: false
|
70
|
-
version_requirements: !ruby/object:Gem::Requirement
|
71
|
-
requirements:
|
72
|
-
- - ">="
|
73
|
-
- !ruby/object:Gem::Version
|
74
|
-
version: '0'
|
75
47
|
- !ruby/object:Gem::Dependency
|
76
48
|
name: braintree
|
77
|
-
requirement: !ruby/object:Gem::Requirement
|
78
|
-
requirements:
|
79
|
-
- - ">="
|
80
|
-
- !ruby/object:Gem::Version
|
81
|
-
version: '0'
|
82
|
-
type: :development
|
83
|
-
prerelease: false
|
84
|
-
version_requirements: !ruby/object:Gem::Requirement
|
85
|
-
requirements:
|
86
|
-
- - ">="
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: '0'
|
89
|
-
- !ruby/object:Gem::Dependency
|
90
|
-
name: capybara
|
91
|
-
requirement: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - ">="
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '0'
|
96
|
-
type: :development
|
97
|
-
prerelease: false
|
98
|
-
version_requirements: !ruby/object:Gem::Requirement
|
99
|
-
requirements:
|
100
|
-
- - ">="
|
101
|
-
- !ruby/object:Gem::Version
|
102
|
-
version: '0'
|
103
|
-
- !ruby/object:Gem::Dependency
|
104
|
-
name: capybara-screenshot
|
105
|
-
requirement: !ruby/object:Gem::Requirement
|
106
|
-
requirements:
|
107
|
-
- - ">="
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
110
|
-
type: :development
|
111
|
-
prerelease: false
|
112
|
-
version_requirements: !ruby/object:Gem::Requirement
|
113
|
-
requirements:
|
114
|
-
- - ">="
|
115
|
-
- !ruby/object:Gem::Version
|
116
|
-
version: '0'
|
117
|
-
- !ruby/object:Gem::Dependency
|
118
|
-
name: coffee-rails
|
119
|
-
requirement: !ruby/object:Gem::Requirement
|
120
|
-
requirements:
|
121
|
-
- - ">="
|
122
|
-
- !ruby/object:Gem::Version
|
123
|
-
version: '0'
|
124
|
-
type: :development
|
125
|
-
prerelease: false
|
126
|
-
version_requirements: !ruby/object:Gem::Requirement
|
127
|
-
requirements:
|
128
|
-
- - ">="
|
129
|
-
- !ruby/object:Gem::Version
|
130
|
-
version: '0'
|
131
|
-
- !ruby/object:Gem::Dependency
|
132
|
-
name: database_cleaner
|
133
|
-
requirement: !ruby/object:Gem::Requirement
|
134
|
-
requirements:
|
135
|
-
- - ">="
|
136
|
-
- !ruby/object:Gem::Version
|
137
|
-
version: '0'
|
138
|
-
type: :development
|
139
|
-
prerelease: false
|
140
|
-
version_requirements: !ruby/object:Gem::Requirement
|
141
|
-
requirements:
|
142
|
-
- - ">="
|
143
|
-
- !ruby/object:Gem::Version
|
144
|
-
version: '0'
|
145
|
-
- !ruby/object:Gem::Dependency
|
146
|
-
name: factory_bot
|
147
49
|
requirement: !ruby/object:Gem::Requirement
|
148
50
|
requirements:
|
149
51
|
- - "~>"
|
150
52
|
- !ruby/object:Gem::Version
|
151
|
-
version: '
|
53
|
+
version: '2.78'
|
152
54
|
type: :development
|
153
55
|
prerelease: false
|
154
56
|
version_requirements: !ruby/object:Gem::Requirement
|
155
57
|
requirements:
|
156
58
|
- - "~>"
|
157
59
|
- !ruby/object:Gem::Version
|
158
|
-
version: '
|
159
|
-
- !ruby/object:Gem::Dependency
|
160
|
-
name: ffaker
|
161
|
-
requirement: !ruby/object:Gem::Requirement
|
162
|
-
requirements:
|
163
|
-
- - ">="
|
164
|
-
- !ruby/object:Gem::Version
|
165
|
-
version: '0'
|
166
|
-
type: :development
|
167
|
-
prerelease: false
|
168
|
-
version_requirements: !ruby/object:Gem::Requirement
|
169
|
-
requirements:
|
170
|
-
- - ">="
|
171
|
-
- !ruby/object:Gem::Version
|
172
|
-
version: '0'
|
173
|
-
- !ruby/object:Gem::Dependency
|
174
|
-
name: guard-rspec
|
175
|
-
requirement: !ruby/object:Gem::Requirement
|
176
|
-
requirements:
|
177
|
-
- - ">="
|
178
|
-
- !ruby/object:Gem::Version
|
179
|
-
version: '0'
|
180
|
-
type: :development
|
181
|
-
prerelease: false
|
182
|
-
version_requirements: !ruby/object:Gem::Requirement
|
183
|
-
requirements:
|
184
|
-
- - ">="
|
185
|
-
- !ruby/object:Gem::Version
|
186
|
-
version: '0'
|
187
|
-
- !ruby/object:Gem::Dependency
|
188
|
-
name: launchy
|
189
|
-
requirement: !ruby/object:Gem::Requirement
|
190
|
-
requirements:
|
191
|
-
- - ">="
|
192
|
-
- !ruby/object:Gem::Version
|
193
|
-
version: '0'
|
194
|
-
type: :development
|
195
|
-
prerelease: false
|
196
|
-
version_requirements: !ruby/object:Gem::Requirement
|
197
|
-
requirements:
|
198
|
-
- - ">="
|
199
|
-
- !ruby/object:Gem::Version
|
200
|
-
version: '0'
|
201
|
-
- !ruby/object:Gem::Dependency
|
202
|
-
name: mysql2
|
203
|
-
requirement: !ruby/object:Gem::Requirement
|
204
|
-
requirements:
|
205
|
-
- - ">="
|
206
|
-
- !ruby/object:Gem::Version
|
207
|
-
version: '0'
|
208
|
-
type: :development
|
209
|
-
prerelease: false
|
210
|
-
version_requirements: !ruby/object:Gem::Requirement
|
211
|
-
requirements:
|
212
|
-
- - ">="
|
213
|
-
- !ruby/object:Gem::Version
|
214
|
-
version: '0'
|
215
|
-
- !ruby/object:Gem::Dependency
|
216
|
-
name: pg
|
217
|
-
requirement: !ruby/object:Gem::Requirement
|
218
|
-
requirements:
|
219
|
-
- - ">="
|
220
|
-
- !ruby/object:Gem::Version
|
221
|
-
version: '0'
|
222
|
-
type: :development
|
223
|
-
prerelease: false
|
224
|
-
version_requirements: !ruby/object:Gem::Requirement
|
225
|
-
requirements:
|
226
|
-
- - ">="
|
227
|
-
- !ruby/object:Gem::Version
|
228
|
-
version: '0'
|
229
|
-
- !ruby/object:Gem::Dependency
|
230
|
-
name: pry
|
231
|
-
requirement: !ruby/object:Gem::Requirement
|
232
|
-
requirements:
|
233
|
-
- - ">="
|
234
|
-
- !ruby/object:Gem::Version
|
235
|
-
version: '0'
|
236
|
-
type: :development
|
237
|
-
prerelease: false
|
238
|
-
version_requirements: !ruby/object:Gem::Requirement
|
239
|
-
requirements:
|
240
|
-
- - ">="
|
241
|
-
- !ruby/object:Gem::Version
|
242
|
-
version: '0'
|
243
|
-
- !ruby/object:Gem::Dependency
|
244
|
-
name: puma
|
245
|
-
requirement: !ruby/object:Gem::Requirement
|
246
|
-
requirements:
|
247
|
-
- - ">="
|
248
|
-
- !ruby/object:Gem::Version
|
249
|
-
version: '0'
|
250
|
-
type: :development
|
251
|
-
prerelease: false
|
252
|
-
version_requirements: !ruby/object:Gem::Requirement
|
253
|
-
requirements:
|
254
|
-
- - ">="
|
255
|
-
- !ruby/object:Gem::Version
|
256
|
-
version: '0'
|
60
|
+
version: '2.78'
|
257
61
|
- !ruby/object:Gem::Dependency
|
258
62
|
name: rspec-activemodel-mocks
|
259
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -269,77 +73,7 @@ dependencies:
|
|
269
73
|
- !ruby/object:Gem::Version
|
270
74
|
version: '0'
|
271
75
|
- !ruby/object:Gem::Dependency
|
272
|
-
name:
|
273
|
-
requirement: !ruby/object:Gem::Requirement
|
274
|
-
requirements:
|
275
|
-
- - ">="
|
276
|
-
- !ruby/object:Gem::Version
|
277
|
-
version: '0'
|
278
|
-
type: :development
|
279
|
-
prerelease: false
|
280
|
-
version_requirements: !ruby/object:Gem::Requirement
|
281
|
-
requirements:
|
282
|
-
- - ">="
|
283
|
-
- !ruby/object:Gem::Version
|
284
|
-
version: '0'
|
285
|
-
- !ruby/object:Gem::Dependency
|
286
|
-
name: sass-rails
|
287
|
-
requirement: !ruby/object:Gem::Requirement
|
288
|
-
requirements:
|
289
|
-
- - ">="
|
290
|
-
- !ruby/object:Gem::Version
|
291
|
-
version: '0'
|
292
|
-
type: :development
|
293
|
-
prerelease: false
|
294
|
-
version_requirements: !ruby/object:Gem::Requirement
|
295
|
-
requirements:
|
296
|
-
- - ">="
|
297
|
-
- !ruby/object:Gem::Version
|
298
|
-
version: '0'
|
299
|
-
- !ruby/object:Gem::Dependency
|
300
|
-
name: selenium-webdriver
|
301
|
-
requirement: !ruby/object:Gem::Requirement
|
302
|
-
requirements:
|
303
|
-
- - ">="
|
304
|
-
- !ruby/object:Gem::Version
|
305
|
-
version: '0'
|
306
|
-
type: :development
|
307
|
-
prerelease: false
|
308
|
-
version_requirements: !ruby/object:Gem::Requirement
|
309
|
-
requirements:
|
310
|
-
- - ">="
|
311
|
-
- !ruby/object:Gem::Version
|
312
|
-
version: '0'
|
313
|
-
- !ruby/object:Gem::Dependency
|
314
|
-
name: webdrivers
|
315
|
-
requirement: !ruby/object:Gem::Requirement
|
316
|
-
requirements:
|
317
|
-
- - ">="
|
318
|
-
- !ruby/object:Gem::Version
|
319
|
-
version: '0'
|
320
|
-
type: :development
|
321
|
-
prerelease: false
|
322
|
-
version_requirements: !ruby/object:Gem::Requirement
|
323
|
-
requirements:
|
324
|
-
- - ">="
|
325
|
-
- !ruby/object:Gem::Version
|
326
|
-
version: '0'
|
327
|
-
- !ruby/object:Gem::Dependency
|
328
|
-
name: simplecov
|
329
|
-
requirement: !ruby/object:Gem::Requirement
|
330
|
-
requirements:
|
331
|
-
- - ">="
|
332
|
-
- !ruby/object:Gem::Version
|
333
|
-
version: '0'
|
334
|
-
type: :development
|
335
|
-
prerelease: false
|
336
|
-
version_requirements: !ruby/object:Gem::Requirement
|
337
|
-
requirements:
|
338
|
-
- - ">="
|
339
|
-
- !ruby/object:Gem::Version
|
340
|
-
version: '0'
|
341
|
-
- !ruby/object:Gem::Dependency
|
342
|
-
name: sqlite3
|
76
|
+
name: spree_dev_tools
|
343
77
|
requirement: !ruby/object:Gem::Requirement
|
344
78
|
requirements:
|
345
79
|
- - ">="
|
@@ -370,6 +104,8 @@ files:
|
|
370
104
|
- app/models/spree/apple_pay_order_decorator.rb
|
371
105
|
- app/models/spree/apple_pay_payment_decorator.rb
|
372
106
|
- app/models/spree/billing_integration.rb
|
107
|
+
- app/models/spree/check.rb
|
108
|
+
- app/models/spree/credit_card_decorator.rb
|
373
109
|
- app/models/spree/gateway/authorize_net.rb
|
374
110
|
- app/models/spree/gateway/authorize_net_cim.rb
|
375
111
|
- app/models/spree/gateway/balanced_gateway.rb
|
@@ -394,12 +130,17 @@ files:
|
|
394
130
|
- app/models/spree/gateway/sage_pay.rb
|
395
131
|
- app/models/spree/gateway/secure_pay_au.rb
|
396
132
|
- app/models/spree/gateway/spreedly_core_gateway.rb
|
133
|
+
- app/models/spree/gateway/stripe_ach_gateway.rb
|
397
134
|
- app/models/spree/gateway/stripe_apple_pay_gateway.rb
|
398
135
|
- app/models/spree/gateway/stripe_elements_gateway.rb
|
399
136
|
- app/models/spree/gateway/stripe_gateway.rb
|
400
137
|
- app/models/spree/gateway/usa_epay_transaction.rb
|
401
138
|
- app/models/spree/gateway/worldpay.rb
|
139
|
+
- app/models/spree/order_decorator.rb
|
140
|
+
- app/models/spree/payment_decorator.rb
|
141
|
+
- app/views/spree/checkout/_payment_confirm.html.erb
|
402
142
|
- config/initializers/inflections.rb
|
143
|
+
- config/initializers/spree_permitted_attributes.rb
|
403
144
|
- config/locales/bg.yml
|
404
145
|
- config/locales/de.yml
|
405
146
|
- config/locales/en.yml
|
@@ -410,13 +151,16 @@ files:
|
|
410
151
|
- db/migrate/20130415222802_update_balanced_payment_method_type.rb
|
411
152
|
- db/migrate/20131008221012_update_paypal_payment_method_type.rb
|
412
153
|
- db/migrate/20131112133401_migrate_stripe_preferences.rb
|
413
|
-
-
|
154
|
+
- db/migrate/20200317135551_add_spree_check_payment_source.rb
|
155
|
+
- db/migrate/20200422114908_add_intent_key_to_payment.rb
|
414
156
|
- gemfiles/spree_3_7.gemfile
|
415
|
-
- gemfiles/
|
157
|
+
- gemfiles/spree_4_1.gemfile
|
416
158
|
- gemfiles/spree_master.gemfile
|
417
159
|
- lib/active_merchant/billing/stripe_gateway_decorator.rb
|
160
|
+
- lib/controllers/spree/api/v2/storefront/intents_controller.rb
|
418
161
|
- lib/controllers/spree/apple_pay_domain_verification_controller.rb
|
419
162
|
- lib/generators/spree_gateway/install/install_generator.rb
|
163
|
+
- lib/spree_frontend/controllers/spree/checkout_controller_decorator.rb
|
420
164
|
- lib/spree_gateway.rb
|
421
165
|
- lib/spree_gateway/engine.rb
|
422
166
|
- lib/spree_gateway/version.rb
|
@@ -424,16 +168,24 @@ files:
|
|
424
168
|
- lib/views/backend/spree/admin/log_entries/_stripe.html.erb
|
425
169
|
- lib/views/backend/spree/admin/payments/source_forms/_quickcheckout.html.erb
|
426
170
|
- lib/views/backend/spree/admin/payments/source_forms/_stripe.html.erb
|
171
|
+
- lib/views/backend/spree/admin/payments/source_forms/_stripe_ach.html.erb
|
172
|
+
- lib/views/backend/spree/admin/payments/source_forms/_stripe_apple_pay.html.erb
|
427
173
|
- lib/views/backend/spree/admin/payments/source_forms/_stripe_elements.html.erb
|
428
174
|
- lib/views/backend/spree/admin/payments/source_views/_stripe.html.erb
|
175
|
+
- lib/views/backend/spree/admin/payments/source_views/_stripe_ach.html.erb
|
176
|
+
- lib/views/backend/spree/admin/payments/source_views/_stripe_apple_pay.html.erb
|
429
177
|
- lib/views/backend/spree/admin/payments/source_views/_stripe_elements.html.erb
|
430
178
|
- lib/views/frontend/spree/checkout/payment/_stripe.html.erb
|
179
|
+
- lib/views/frontend/spree/checkout/payment/_stripe_ach.html.erb
|
180
|
+
- lib/views/frontend/spree/checkout/payment/_stripe_ach_verify.html.erb
|
431
181
|
- lib/views/frontend/spree/checkout/payment/_stripe_additional_info.html.erb
|
432
182
|
- lib/views/frontend/spree/checkout/payment/_stripe_apple_pay.html.erb
|
433
183
|
- lib/views/frontend/spree/checkout/payment/_stripe_elements.html.erb
|
434
184
|
- script/rails
|
185
|
+
- spec/factories/check_factory.rb
|
435
186
|
- spec/features/admin/stripe_elements_payment_spec.rb
|
436
187
|
- spec/features/stripe_checkout_spec.rb
|
188
|
+
- spec/features/stripe_elements_3ds_checkout_spec.rb
|
437
189
|
- spec/models/gateway/authorize_net_cim_spec.rb
|
438
190
|
- spec/models/gateway/authorize_net_spec.rb
|
439
191
|
- spec/models/gateway/balanced_gateway_spec.rb
|
@@ -456,20 +208,26 @@ files:
|
|
456
208
|
- spec/models/gateway/quickpay_spec.rb
|
457
209
|
- spec/models/gateway/sage_pay_spec.rb
|
458
210
|
- spec/models/gateway/secure_pay_au_spec.rb
|
211
|
+
- spec/models/gateway/stripe_ach_gateway_spec.rb
|
459
212
|
- spec/models/gateway/stripe_gateway_spec.rb
|
460
213
|
- spec/models/gateway/usa_epay_transaction_spec.rb
|
461
214
|
- spec/models/gateway/worldpay_spec.rb
|
462
215
|
- spec/models/spree/order_spec.rb
|
463
216
|
- spec/requests/apple_pay_domain_verification.rb
|
464
217
|
- spec/spec_helper.rb
|
465
|
-
- spec/support/
|
218
|
+
- spec/support/order_walktrough.rb
|
466
219
|
- spec/support/wait_for_stripe.rb
|
220
|
+
- spec/support/within_stripe_3ds_popup.rb
|
467
221
|
- spree_gateway.gemspec
|
468
222
|
homepage: https://spreecommerce.org
|
469
223
|
licenses:
|
470
224
|
- BSD-3-Clause
|
471
|
-
metadata:
|
472
|
-
|
225
|
+
metadata:
|
226
|
+
bug_tracker_uri: https://github.com/spree/spree_gateway/issues
|
227
|
+
changelog_uri: https://github.com/spree/spree_gateway/releases/tag/v3.9.3
|
228
|
+
documentation_uri: https://guides.spreecommerce.org/
|
229
|
+
source_code_uri: https://github.com/spree/spree_gateway/tree/v3.9.3
|
230
|
+
post_install_message:
|
473
231
|
rdoc_options: []
|
474
232
|
require_paths:
|
475
233
|
- lib
|
@@ -485,13 +243,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
485
243
|
version: '0'
|
486
244
|
requirements:
|
487
245
|
- none
|
488
|
-
rubygems_version: 3.
|
489
|
-
signing_key:
|
246
|
+
rubygems_version: 3.2.3
|
247
|
+
signing_key:
|
490
248
|
specification_version: 4
|
491
249
|
summary: Additional Payment Gateways for Spree Commerce
|
492
250
|
test_files:
|
251
|
+
- spec/factories/check_factory.rb
|
493
252
|
- spec/features/admin/stripe_elements_payment_spec.rb
|
494
253
|
- spec/features/stripe_checkout_spec.rb
|
254
|
+
- spec/features/stripe_elements_3ds_checkout_spec.rb
|
495
255
|
- spec/models/gateway/authorize_net_cim_spec.rb
|
496
256
|
- spec/models/gateway/authorize_net_spec.rb
|
497
257
|
- spec/models/gateway/balanced_gateway_spec.rb
|
@@ -514,11 +274,13 @@ test_files:
|
|
514
274
|
- spec/models/gateway/quickpay_spec.rb
|
515
275
|
- spec/models/gateway/sage_pay_spec.rb
|
516
276
|
- spec/models/gateway/secure_pay_au_spec.rb
|
277
|
+
- spec/models/gateway/stripe_ach_gateway_spec.rb
|
517
278
|
- spec/models/gateway/stripe_gateway_spec.rb
|
518
279
|
- spec/models/gateway/usa_epay_transaction_spec.rb
|
519
280
|
- spec/models/gateway/worldpay_spec.rb
|
520
281
|
- spec/models/spree/order_spec.rb
|
521
282
|
- spec/requests/apple_pay_domain_verification.rb
|
522
283
|
- spec/spec_helper.rb
|
523
|
-
- spec/support/
|
284
|
+
- spec/support/order_walktrough.rb
|
524
285
|
- spec/support/wait_for_stripe.rb
|
286
|
+
- spec/support/within_stripe_3ds_popup.rb
|