spree_gateway 2.2.0 → 2.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +9 -0
  3. data/.rspec +1 -0
  4. data/.travis.yml +23 -0
  5. data/Gemfile +5 -0
  6. data/Guardfile +9 -0
  7. data/LICENSE.md +26 -0
  8. data/README.md +71 -0
  9. data/Rakefile +15 -0
  10. data/Versionfile +7 -0
  11. data/app/assets/javascripts/spree/frontend/spree_gateway.js +3 -0
  12. data/app/assets/javascripts/store/gateway/stripe.js.coffee +58 -0
  13. data/app/assets/javascripts/store/spree_gateway.js +2 -0
  14. data/app/assets/stylesheets/spree/frontend/spree_gateway.css +3 -0
  15. data/app/controllers/spree/checkout_controller_decorator.rb +51 -0
  16. data/app/controllers/spree/skrill_status_controller.rb +39 -0
  17. data/app/models/spree/billing_integration/skrill/quick_checkout.rb +48 -0
  18. data/app/models/spree/gateway/authorize_net.rb +16 -0
  19. data/app/models/spree/gateway/authorize_net_cim.rb +132 -0
  20. data/app/models/spree/gateway/balanced_gateway.rb +67 -0
  21. data/app/models/spree/gateway/banwire.rb +15 -0
  22. data/app/models/spree/gateway/beanstream.rb +193 -0
  23. data/app/models/spree/gateway/braintree_gateway.rb +147 -0
  24. data/app/models/spree/gateway/card_save.rb +10 -0
  25. data/app/models/spree/gateway/data_cash.rb +10 -0
  26. data/app/models/spree/gateway/eway.rb +20 -0
  27. data/app/models/spree/gateway/fatzebra.rb +15 -0
  28. data/app/models/spree/gateway/linkpoint.rb +28 -0
  29. data/app/models/spree/gateway/maxipago.rb +14 -0
  30. data/app/models/spree/gateway/moneris.rb +10 -0
  31. data/app/models/spree/gateway/pay_junction.rb +16 -0
  32. data/app/models/spree/gateway/pay_pal_gateway.rb +12 -0
  33. data/app/models/spree/gateway/payflow_pro.rb +17 -0
  34. data/app/models/spree/gateway/paymill.rb +12 -0
  35. data/app/models/spree/gateway/pin_gateway.rb +15 -0
  36. data/app/models/spree/gateway/sage_pay.rb +11 -0
  37. data/app/models/spree/gateway/samurai.rb +63 -0
  38. data/app/models/spree/gateway/secure_pay_au.rb +10 -0
  39. data/app/models/spree/gateway/stripe_gateway.rb +103 -0
  40. data/app/models/spree/gateway/usa_epay.rb +9 -0
  41. data/app/models/spree/gateway/worldpay.rb +91 -0
  42. data/app/models/spree/skrill_transaction.rb +19 -0
  43. data/app/views/spree/admin/log_entries/_braintree.html.erb +31 -0
  44. data/app/views/spree/admin/log_entries/_stripe.html.erb +28 -0
  45. data/app/views/spree/admin/payments/source_forms/_quickcheckout.html.erb +8 -0
  46. data/app/views/spree/admin/payments/source_forms/_stripe.html.erb +1 -0
  47. data/app/views/spree/admin/payments/source_views/_quickcheckout.html.erb +39 -0
  48. data/app/views/spree/admin/payments/source_views/_stripe.html.erb +1 -0
  49. data/app/views/spree/checkout/payment/_quickcheckout.html.erb +26 -0
  50. data/app/views/spree/checkout/payment/_stripe.html.erb +21 -0
  51. data/config/initializers/savon.rb +3 -0
  52. data/config/locales/bg.yml +11 -0
  53. data/config/locales/de.yml +11 -0
  54. data/config/locales/en.yml +30 -0
  55. data/config/locales/sv.yml +11 -0
  56. data/config/routes.rb +13 -0
  57. data/db/migrate/20111118164631_create_skrill_transactions.rb +14 -0
  58. data/db/migrate/20121017004102_update_braintree_payment_method_type.rb +9 -0
  59. data/db/migrate/20130213222555_update_stripe_payment_method_type.rb +9 -0
  60. data/db/migrate/20130415222802_update_balanced_payment_method_type.rb +9 -0
  61. data/db/migrate/20131008221012_update_paypal_payment_method_type.rb +9 -0
  62. data/db/migrate/20131112133401_migrate_stripe_preferences.rb +8 -0
  63. data/lib/active_merchant/billing/skrill.rb +18 -0
  64. data/lib/generators/spree_gateway/install/install_generator.rb +28 -0
  65. data/lib/spree_gateway.rb +4 -0
  66. data/lib/spree_gateway/engine.rb +35 -0
  67. data/script/rails +7 -0
  68. data/spec/controllers/spree/checkout_controller_spec.rb +13 -0
  69. data/spec/controllers/spree/skrill_status_controller_spec.rb +8 -0
  70. data/spec/factories/payment_method_factory.rb +6 -0
  71. data/spec/factories/skrill_transaction_factory.rb +10 -0
  72. data/spec/features/stripe_checkout_spec.rb +82 -0
  73. data/spec/lib/active_merchant/billing_skrill_spec.rb +18 -0
  74. data/spec/models/billing_integration/skrill_quick_checkout_spec.rb +11 -0
  75. data/spec/models/gateway/authorize_net_cim_spec.rb +29 -0
  76. data/spec/models/gateway/authorize_net_spec.rb +23 -0
  77. data/spec/models/gateway/balanced_gateway_spec.rb +17 -0
  78. data/spec/models/gateway/banwire_spec.rb +11 -0
  79. data/spec/models/gateway/beanstream_spec.rb +17 -0
  80. data/spec/models/gateway/braintree_gateway_spec.rb +319 -0
  81. data/spec/models/gateway/card_save_spec.rb +11 -0
  82. data/spec/models/gateway/data_cache_spec.rb +11 -0
  83. data/spec/models/gateway/eway_spec.rb +29 -0
  84. data/spec/models/gateway/fatzebra_spec.rb +51 -0
  85. data/spec/models/gateway/linkpoint_spec.rb +62 -0
  86. data/spec/models/gateway/maxipago_spec.rb +17 -0
  87. data/spec/models/gateway/moneris_spec.rb +11 -0
  88. data/spec/models/gateway/pay_junction_spec.rb +23 -0
  89. data/spec/models/gateway/pay_pal_spec.rb +11 -0
  90. data/spec/models/gateway/payflow_pro_spec.rb +23 -0
  91. data/spec/models/gateway/paymill_spec.rb +11 -0
  92. data/spec/models/gateway/pin_gateway_spec.rb +56 -0
  93. data/spec/models/gateway/sage_pay_spec.rb +11 -0
  94. data/spec/models/gateway/samurai_spec.rb +17 -0
  95. data/spec/models/gateway/secure_pay_au_spec.rb +11 -0
  96. data/spec/models/gateway/stripe_gateway_spec.rb +117 -0
  97. data/spec/models/gateway/usa_epay_spec.rb +49 -0
  98. data/spec/models/gateway/worldpay_spec.rb +11 -0
  99. data/spec/models/savon_spec.rb +9 -0
  100. data/spec/models/skrill_transaction_spec.rb +9 -0
  101. data/spec/spec_helper.rb +49 -0
  102. data/spree_gateway.gemspec +40 -0
  103. metadata +140 -5
@@ -0,0 +1,49 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spree::Gateway::UsaEpay do
4
+ before do
5
+ Spree::Gateway.update_all(active: false)
6
+ @gateway = Spree::Gateway::UsaEpay.create!(name: 'USA EPay Gateway', environment: 'sandbox', active: true)
7
+ @gateway.set_preference(:login, '0r19zQBdp5nS8i3t4hFxz0di13yf56q1')
8
+ @gateway.save!
9
+
10
+ country = create(:country, name: 'United States', iso_name: 'UNITED STATES', iso3: 'USA', iso: 'US', numcode: 840)
11
+ state = create(:state, name: 'Maryland', abbr: 'MD', country: country)
12
+ address = create(:address,
13
+ firstname: 'John',
14
+ lastname: 'Doe',
15
+ address1: '1234 My Street',
16
+ address2: 'Apt 1',
17
+ city: 'Washington DC',
18
+ zipcode: '20123',
19
+ phone: '(555)555-5555',
20
+ state: state,
21
+ country: country)
22
+
23
+ order = create(:order_with_totals, bill_address: address, ship_address: address)
24
+ order.update!
25
+
26
+ credit_card = create(:credit_card,
27
+ verification_value: '123',
28
+ number: '4111111111111111',
29
+ month: 9,
30
+ year: Time.now.year + 1,
31
+ first_name: 'John',
32
+ last_name: 'Doe')
33
+
34
+ @payment = create(:payment, source: credit_card, order: order, payment_method: @gateway, amount: 10.00)
35
+ @payment.payment_method.environment = 'test'
36
+ end
37
+
38
+ context 'purchasing' do
39
+ it 'can purchase a payment' do
40
+ expect { @payment.purchase! }.to be_true
41
+ end
42
+ end
43
+
44
+ context '.provider_class' do
45
+ it 'is a Worldpay gateway' do
46
+ expect(@gateway.provider_class).to eq ::ActiveMerchant::Billing::UsaEpayGateway
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,11 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spree::Gateway::Worldpay do
4
+ let(:gateway) { described_class.create!(name: 'Worldpay') }
5
+
6
+ context '.provider_class' do
7
+ it 'is a Worldpay gateway' do
8
+ expect(gateway.provider_class).to eq ::ActiveMerchant::Billing::WorldpayGateway
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Savon do
4
+ let(:config) { Savon.config }
5
+
6
+ it 'does not log anything' do
7
+ expect(Savon.config.logger).to be_a_kind_of Savon::NullLogger
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ require 'spec_helper'
2
+
3
+ describe Spree::SkrillTransaction do
4
+ let(:skrill_transaction) { create(:skrill_transaction) }
5
+
6
+ context '.actions' do
7
+ it { expect(subject.actions).to match_array([]) }
8
+ end
9
+ end
@@ -0,0 +1,49 @@
1
+ require 'simplecov'
2
+ SimpleCov.start 'rails'
3
+
4
+ ENV["RAILS_ENV"] = "test"
5
+
6
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
7
+
8
+ require 'rspec/rails'
9
+ require 'capybara/rspec'
10
+ require 'capybara/rails'
11
+ require 'capybara/poltergeist'
12
+ require 'database_cleaner'
13
+ require 'ffaker'
14
+
15
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
16
+
17
+ require 'spree/testing_support/factories'
18
+ require 'spree/testing_support/order_walkthrough'
19
+ require 'spree/testing_support/preferences'
20
+
21
+ FactoryGirl.find_definitions
22
+
23
+ RSpec.configure do |config|
24
+ config.mock_with :rspec
25
+ config.use_transactional_fixtures = false
26
+
27
+ #config.filter_run focus: true
28
+ #config.filter_run_excluding slow: true
29
+
30
+ config.include FactoryGirl::Syntax::Methods
31
+ config.include Spree::TestingSupport::Preferences
32
+
33
+ config.before :suite do
34
+ DatabaseCleaner.strategy = :transaction
35
+ DatabaseCleaner.clean_with :truncation
36
+ end
37
+
38
+ config.before do
39
+ DatabaseCleaner.strategy = example.metadata[:js] ? :truncation : :transaction
40
+ DatabaseCleaner.start
41
+ reset_spree_preferences
42
+ end
43
+
44
+ config.after do
45
+ DatabaseCleaner.clean
46
+ end
47
+
48
+ Capybara.javascript_driver = :poltergeist
49
+ end
@@ -0,0 +1,40 @@
1
+ # coding: utf-8
2
+ Gem::Specification.new do |s|
3
+ s.platform = Gem::Platform::RUBY
4
+ s.name = 'spree_gateway'
5
+ s.version = '2.2.1'
6
+ s.summary = 'Additional Payment Gateways for Spree Commerce'
7
+ s.description = s.summary
8
+ s.required_ruby_version = '>= 1.9.3'
9
+
10
+ s.author = 'Spree Commerce'
11
+ s.email = 'gems@spreecommerce.com'
12
+ s.homepage = 'http://www.spreecommerce.com'
13
+ s.license = %q{BSD-3}
14
+
15
+ s.files = `git ls-files`.split("\n")
16
+ s.test_files = `git ls-files -- spec/*`.split("\n")
17
+ s.require_path = 'lib'
18
+ s.requirements << 'none'
19
+
20
+ s.add_dependency 'spree_core', '~> 2.2.0'
21
+ s.add_dependency 'savon', '~> 1.2'
22
+
23
+ s.add_development_dependency 'factory_girl', '~> 4.4'
24
+ s.add_development_dependency 'rspec-rails', '~> 2.14'
25
+ s.add_development_dependency 'capybara', '2.2.1'
26
+ s.add_development_dependency 'launchy'
27
+ s.add_development_dependency 'ffaker'
28
+ s.add_development_dependency 'coffee-rails', '~> 4.0.0'
29
+ s.add_development_dependency 'sass-rails', '~> 4.0.0'
30
+ s.add_development_dependency 'poltergeist', '1.5.0'
31
+ s.add_development_dependency 'selenium-webdriver'
32
+ s.add_development_dependency 'database_cleaner', '1.2.0'
33
+ s.add_development_dependency 'simplecov', '~> 0.7.1'
34
+ s.add_development_dependency 'guard-rspec'
35
+ s.add_development_dependency 'sqlite3'
36
+ s.add_development_dependency 'pg'
37
+ s.add_development_dependency 'mysql2'
38
+ s.add_development_dependency 'pry'
39
+ s.add_development_dependency 'braintree'
40
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: spree_gateway
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.0
4
+ version: 2.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Spree Commerce
@@ -277,12 +277,113 @@ dependencies:
277
277
  - !ruby/object:Gem::Version
278
278
  version: '0'
279
279
  description: Additional Payment Gateways for Spree Commerce
280
- email: ryan@spreecommerce.com
280
+ email: gems@spreecommerce.com
281
281
  executables: []
282
282
  extensions: []
283
283
  extra_rdoc_files: []
284
- files: []
285
- homepage: http://www.spreecommerce.org
284
+ files:
285
+ - ".gitignore"
286
+ - ".rspec"
287
+ - ".travis.yml"
288
+ - Gemfile
289
+ - Guardfile
290
+ - LICENSE.md
291
+ - README.md
292
+ - Rakefile
293
+ - Versionfile
294
+ - app/assets/javascripts/spree/frontend/spree_gateway.js
295
+ - app/assets/javascripts/store/gateway/stripe.js.coffee
296
+ - app/assets/javascripts/store/spree_gateway.js
297
+ - app/assets/stylesheets/spree/frontend/spree_gateway.css
298
+ - app/controllers/spree/checkout_controller_decorator.rb
299
+ - app/controllers/spree/skrill_status_controller.rb
300
+ - app/models/spree/billing_integration/skrill/quick_checkout.rb
301
+ - app/models/spree/gateway/authorize_net.rb
302
+ - app/models/spree/gateway/authorize_net_cim.rb
303
+ - app/models/spree/gateway/balanced_gateway.rb
304
+ - app/models/spree/gateway/banwire.rb
305
+ - app/models/spree/gateway/beanstream.rb
306
+ - app/models/spree/gateway/braintree_gateway.rb
307
+ - app/models/spree/gateway/card_save.rb
308
+ - app/models/spree/gateway/data_cash.rb
309
+ - app/models/spree/gateway/eway.rb
310
+ - app/models/spree/gateway/fatzebra.rb
311
+ - app/models/spree/gateway/linkpoint.rb
312
+ - app/models/spree/gateway/maxipago.rb
313
+ - app/models/spree/gateway/moneris.rb
314
+ - app/models/spree/gateway/pay_junction.rb
315
+ - app/models/spree/gateway/pay_pal_gateway.rb
316
+ - app/models/spree/gateway/payflow_pro.rb
317
+ - app/models/spree/gateway/paymill.rb
318
+ - app/models/spree/gateway/pin_gateway.rb
319
+ - app/models/spree/gateway/sage_pay.rb
320
+ - app/models/spree/gateway/samurai.rb
321
+ - app/models/spree/gateway/secure_pay_au.rb
322
+ - app/models/spree/gateway/stripe_gateway.rb
323
+ - app/models/spree/gateway/usa_epay.rb
324
+ - app/models/spree/gateway/worldpay.rb
325
+ - app/models/spree/skrill_transaction.rb
326
+ - app/views/spree/admin/log_entries/_braintree.html.erb
327
+ - app/views/spree/admin/log_entries/_stripe.html.erb
328
+ - app/views/spree/admin/payments/source_forms/_quickcheckout.html.erb
329
+ - app/views/spree/admin/payments/source_forms/_stripe.html.erb
330
+ - app/views/spree/admin/payments/source_views/_quickcheckout.html.erb
331
+ - app/views/spree/admin/payments/source_views/_stripe.html.erb
332
+ - app/views/spree/checkout/payment/_quickcheckout.html.erb
333
+ - app/views/spree/checkout/payment/_stripe.html.erb
334
+ - config/initializers/savon.rb
335
+ - config/locales/bg.yml
336
+ - config/locales/de.yml
337
+ - config/locales/en.yml
338
+ - config/locales/sv.yml
339
+ - config/routes.rb
340
+ - db/migrate/20111118164631_create_skrill_transactions.rb
341
+ - db/migrate/20121017004102_update_braintree_payment_method_type.rb
342
+ - db/migrate/20130213222555_update_stripe_payment_method_type.rb
343
+ - db/migrate/20130415222802_update_balanced_payment_method_type.rb
344
+ - db/migrate/20131008221012_update_paypal_payment_method_type.rb
345
+ - db/migrate/20131112133401_migrate_stripe_preferences.rb
346
+ - lib/active_merchant/billing/skrill.rb
347
+ - lib/generators/spree_gateway/install/install_generator.rb
348
+ - lib/spree_gateway.rb
349
+ - lib/spree_gateway/engine.rb
350
+ - script/rails
351
+ - spec/controllers/spree/checkout_controller_spec.rb
352
+ - spec/controllers/spree/skrill_status_controller_spec.rb
353
+ - spec/factories/payment_method_factory.rb
354
+ - spec/factories/skrill_transaction_factory.rb
355
+ - spec/features/stripe_checkout_spec.rb
356
+ - spec/lib/active_merchant/billing_skrill_spec.rb
357
+ - spec/models/billing_integration/skrill_quick_checkout_spec.rb
358
+ - spec/models/gateway/authorize_net_cim_spec.rb
359
+ - spec/models/gateway/authorize_net_spec.rb
360
+ - spec/models/gateway/balanced_gateway_spec.rb
361
+ - spec/models/gateway/banwire_spec.rb
362
+ - spec/models/gateway/beanstream_spec.rb
363
+ - spec/models/gateway/braintree_gateway_spec.rb
364
+ - spec/models/gateway/card_save_spec.rb
365
+ - spec/models/gateway/data_cache_spec.rb
366
+ - spec/models/gateway/eway_spec.rb
367
+ - spec/models/gateway/fatzebra_spec.rb
368
+ - spec/models/gateway/linkpoint_spec.rb
369
+ - spec/models/gateway/maxipago_spec.rb
370
+ - spec/models/gateway/moneris_spec.rb
371
+ - spec/models/gateway/pay_junction_spec.rb
372
+ - spec/models/gateway/pay_pal_spec.rb
373
+ - spec/models/gateway/payflow_pro_spec.rb
374
+ - spec/models/gateway/paymill_spec.rb
375
+ - spec/models/gateway/pin_gateway_spec.rb
376
+ - spec/models/gateway/sage_pay_spec.rb
377
+ - spec/models/gateway/samurai_spec.rb
378
+ - spec/models/gateway/secure_pay_au_spec.rb
379
+ - spec/models/gateway/stripe_gateway_spec.rb
380
+ - spec/models/gateway/usa_epay_spec.rb
381
+ - spec/models/gateway/worldpay_spec.rb
382
+ - spec/models/savon_spec.rb
383
+ - spec/models/skrill_transaction_spec.rb
384
+ - spec/spec_helper.rb
385
+ - spree_gateway.gemspec
386
+ homepage: http://www.spreecommerce.com
286
387
  licenses:
287
388
  - BSD-3
288
389
  metadata: {}
@@ -307,4 +408,38 @@ rubygems_version: 2.2.0
307
408
  signing_key:
308
409
  specification_version: 4
309
410
  summary: Additional Payment Gateways for Spree Commerce
310
- test_files: []
411
+ test_files:
412
+ - spec/controllers/spree/checkout_controller_spec.rb
413
+ - spec/controllers/spree/skrill_status_controller_spec.rb
414
+ - spec/factories/payment_method_factory.rb
415
+ - spec/factories/skrill_transaction_factory.rb
416
+ - spec/features/stripe_checkout_spec.rb
417
+ - spec/lib/active_merchant/billing_skrill_spec.rb
418
+ - spec/models/billing_integration/skrill_quick_checkout_spec.rb
419
+ - spec/models/gateway/authorize_net_cim_spec.rb
420
+ - spec/models/gateway/authorize_net_spec.rb
421
+ - spec/models/gateway/balanced_gateway_spec.rb
422
+ - spec/models/gateway/banwire_spec.rb
423
+ - spec/models/gateway/beanstream_spec.rb
424
+ - spec/models/gateway/braintree_gateway_spec.rb
425
+ - spec/models/gateway/card_save_spec.rb
426
+ - spec/models/gateway/data_cache_spec.rb
427
+ - spec/models/gateway/eway_spec.rb
428
+ - spec/models/gateway/fatzebra_spec.rb
429
+ - spec/models/gateway/linkpoint_spec.rb
430
+ - spec/models/gateway/maxipago_spec.rb
431
+ - spec/models/gateway/moneris_spec.rb
432
+ - spec/models/gateway/pay_junction_spec.rb
433
+ - spec/models/gateway/pay_pal_spec.rb
434
+ - spec/models/gateway/payflow_pro_spec.rb
435
+ - spec/models/gateway/paymill_spec.rb
436
+ - spec/models/gateway/pin_gateway_spec.rb
437
+ - spec/models/gateway/sage_pay_spec.rb
438
+ - spec/models/gateway/samurai_spec.rb
439
+ - spec/models/gateway/secure_pay_au_spec.rb
440
+ - spec/models/gateway/stripe_gateway_spec.rb
441
+ - spec/models/gateway/usa_epay_spec.rb
442
+ - spec/models/gateway/worldpay_spec.rb
443
+ - spec/models/savon_spec.rb
444
+ - spec/models/skrill_transaction_spec.rb
445
+ - spec/spec_helper.rb