smulube-activemerchant 1.5.1.4 → 1.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (211) hide show
  1. data.tar.gz.sig +0 -0
  2. data/CHANGELOG +9 -0
  3. data/CONTRIBUTORS +5 -1
  4. data/gem-public_cert.pem +18 -18
  5. data/lib/active_merchant.rb +9 -9
  6. data/lib/active_merchant/billing/gateways/braintree.rb +11 -11
  7. data/lib/active_merchant/billing/gateways/braintree/braintree_common.rb +9 -0
  8. data/lib/active_merchant/billing/gateways/braintree_blue.rb +210 -0
  9. data/lib/active_merchant/billing/gateways/braintree_orange.rb +17 -0
  10. data/lib/active_merchant/billing/gateways/payflow_nvp_uk.rb +10 -5
  11. data/lib/active_merchant/billing/integrations/action_view_helper.rb +1 -1
  12. data/lib/active_merchant/common.rb +14 -0
  13. data/lib/active_merchant/{lib → common}/connection.rb +2 -5
  14. data/lib/active_merchant/{lib → common}/country.rb +1 -1
  15. data/lib/active_merchant/common/error.rb +26 -0
  16. data/lib/active_merchant/common/post_data.rb +24 -0
  17. data/lib/active_merchant/{lib → common}/posts_data.rb +0 -0
  18. data/lib/active_merchant/{lib → common}/requires_parameters.rb +0 -0
  19. data/lib/active_merchant/{lib → common}/utils.rb +0 -0
  20. data/lib/active_merchant/{lib → common}/validateable.rb +0 -0
  21. data/lib/active_merchant/version.rb +1 -1
  22. data/lib/active_merchant/version.rb.orig +7 -0
  23. data/lib/activemerchant.rb +1 -0
  24. data/lib/support/outbound_hosts.rb +25 -0
  25. metadata +175 -493
  26. metadata.gz.sig +0 -0
  27. data/.gitignore +0 -7
  28. data/Rakefile +0 -85
  29. data/generators/gateway/USAGE +0 -5
  30. data/generators/gateway/gateway_generator.rb +0 -61
  31. data/generators/gateway/templates/gateway.rb +0 -77
  32. data/generators/gateway/templates/gateway_test.rb +0 -49
  33. data/generators/gateway/templates/remote_gateway_test.rb +0 -57
  34. data/generators/integration/USAGE +0 -5
  35. data/generators/integration/integration_generator.rb +0 -68
  36. data/generators/integration/templates/helper.rb +0 -34
  37. data/generators/integration/templates/helper_test.rb +0 -54
  38. data/generators/integration/templates/integration.rb +0 -18
  39. data/generators/integration/templates/module_test.rb +0 -9
  40. data/generators/integration/templates/notification.rb +0 -100
  41. data/generators/integration/templates/notification_test.rb +0 -41
  42. data/init.rb +0 -3
  43. data/lib/active_merchant/lib/error.rb +0 -4
  44. data/lib/active_merchant/lib/post_data.rb +0 -22
  45. data/script/destroy +0 -14
  46. data/script/generate +0 -14
  47. data/test/fixtures.yml +0 -360
  48. data/test/remote/gateways/remote_authorize_net_cim_test.rb +0 -460
  49. data/test/remote/gateways/remote_authorize_net_test.rb +0 -145
  50. data/test/remote/gateways/remote_beanstream_interac_test.rb +0 -53
  51. data/test/remote/gateways/remote_beanstream_test.rb +0 -150
  52. data/test/remote/gateways/remote_braintree_test.rb +0 -147
  53. data/test/remote/gateways/remote_card_stream_test.rb +0 -148
  54. data/test/remote/gateways/remote_cyber_source_test.rb +0 -146
  55. data/test/remote/gateways/remote_data_cash_test.rb +0 -356
  56. data/test/remote/gateways/remote_efsnet_test.rb +0 -81
  57. data/test/remote/gateways/remote_elavon_test.rb +0 -66
  58. data/test/remote/gateways/remote_eway_test.rb +0 -74
  59. data/test/remote/gateways/remote_exact_test.rb +0 -60
  60. data/test/remote/gateways/remote_first_pay_test.rb +0 -87
  61. data/test/remote/gateways/remote_garanti_test.rb +0 -58
  62. data/test/remote/gateways/remote_instapay_test.rb +0 -61
  63. data/test/remote/gateways/remote_jetpay_test.rb +0 -103
  64. data/test/remote/gateways/remote_linkpoint_test.rb +0 -121
  65. data/test/remote/gateways/remote_merchant_e_solutions_test.rb +0 -173
  66. data/test/remote/gateways/remote_merchant_ware_test.rb +0 -113
  67. data/test/remote/gateways/remote_modern_payments_cim_test.rb +0 -58
  68. data/test/remote/gateways/remote_modern_payments_test.rb +0 -57
  69. data/test/remote/gateways/remote_moneris_test.rb +0 -82
  70. data/test/remote/gateways/remote_net_registry_test.rb +0 -85
  71. data/test/remote/gateways/remote_netbilling_test.rb +0 -70
  72. data/test/remote/gateways/remote_ogone_test.rb +0 -115
  73. data/test/remote/gateways/remote_pay_junction_test.rb +0 -143
  74. data/test/remote/gateways/remote_pay_secure_test.rb +0 -39
  75. data/test/remote/gateways/remote_payflow_express_test.rb +0 -50
  76. data/test/remote/gateways/remote_payflow_nvp_uk_test.rb +0 -57
  77. data/test/remote/gateways/remote_payflow_test.rb +0 -237
  78. data/test/remote/gateways/remote_payflow_uk_test.rb +0 -173
  79. data/test/remote/gateways/remote_payment_express_test.rb +0 -136
  80. data/test/remote/gateways/remote_paypal_express_test.rb +0 -49
  81. data/test/remote/gateways/remote_paypal_test.rb +0 -191
  82. data/test/remote/gateways/remote_plugnpay_test.rb +0 -72
  83. data/test/remote/gateways/remote_psigate_test.rb +0 -50
  84. data/test/remote/gateways/remote_psl_card_test.rb +0 -123
  85. data/test/remote/gateways/remote_quickpay_test.rb +0 -190
  86. data/test/remote/gateways/remote_realex_test.rb +0 -224
  87. data/test/remote/gateways/remote_sage_bankcard_test.rb +0 -109
  88. data/test/remote/gateways/remote_sage_pay_test.rb +0 -219
  89. data/test/remote/gateways/remote_sage_test.rb +0 -87
  90. data/test/remote/gateways/remote_sage_virtual_check_test.rb +0 -62
  91. data/test/remote/gateways/remote_sallie_mae_test.rb +0 -51
  92. data/test/remote/gateways/remote_secure_pay_au_test.rb +0 -40
  93. data/test/remote/gateways/remote_secure_pay_tech_test.rb +0 -37
  94. data/test/remote/gateways/remote_secure_pay_test.rb +0 -28
  95. data/test/remote/gateways/remote_skipjack_test.rb +0 -105
  96. data/test/remote/gateways/remote_trans_first_test.rb +0 -34
  97. data/test/remote/gateways/remote_transax_test.rb +0 -112
  98. data/test/remote/gateways/remote_trust_commerce_test.rb +0 -152
  99. data/test/remote/gateways/remote_usa_epay_test.rb +0 -46
  100. data/test/remote/gateways/remote_verifi_test.rb +0 -107
  101. data/test/remote/gateways/remote_viaklix_test.rb +0 -43
  102. data/test/remote/gateways/remote_wirecard_test.rb +0 -111
  103. data/test/remote/integrations/remote_gestpay_integration_test.rb +0 -37
  104. data/test/remote/integrations/remote_paypal_integration_test.rb +0 -26
  105. data/test/test_helper.rb +0 -184
  106. data/test/unit/avs_result_test.rb +0 -59
  107. data/test/unit/base_test.rb +0 -54
  108. data/test/unit/check_test.rb +0 -88
  109. data/test/unit/connection_test.rb +0 -137
  110. data/test/unit/country_code_test.rb +0 -33
  111. data/test/unit/country_test.rb +0 -64
  112. data/test/unit/credit_card_formatting_test.rb +0 -19
  113. data/test/unit/credit_card_methods_test.rb +0 -192
  114. data/test/unit/credit_card_test.rb +0 -318
  115. data/test/unit/cvv_result_test.rb +0 -33
  116. data/test/unit/expiry_date_test.rb +0 -32
  117. data/test/unit/gateways/authorize_net_cim_test.rb +0 -676
  118. data/test/unit/gateways/authorize_net_test.rb +0 -290
  119. data/test/unit/gateways/beanstream_interac_test.rb +0 -51
  120. data/test/unit/gateways/beanstream_test.rb +0 -144
  121. data/test/unit/gateways/bogus_test.rb +0 -58
  122. data/test/unit/gateways/braintree_test.rb +0 -118
  123. data/test/unit/gateways/card_stream_test.rb +0 -90
  124. data/test/unit/gateways/cyber_source_test.rb +0 -188
  125. data/test/unit/gateways/data_cash_test.rb +0 -133
  126. data/test/unit/gateways/efsnet_test.rb +0 -123
  127. data/test/unit/gateways/elavon_test.rb +0 -139
  128. data/test/unit/gateways/eway_test.rb +0 -118
  129. data/test/unit/gateways/exact_test.rb +0 -156
  130. data/test/unit/gateways/first_pay_test.rb +0 -125
  131. data/test/unit/gateways/garanti_test.rb +0 -86
  132. data/test/unit/gateways/gateway_test.rb +0 -48
  133. data/test/unit/gateways/instapay_test.rb +0 -102
  134. data/test/unit/gateways/jetpay_test.rb +0 -185
  135. data/test/unit/gateways/linkpoint_test.rb +0 -197
  136. data/test/unit/gateways/merchant_e_solutions_test.rb +0 -169
  137. data/test/unit/gateways/merchant_ware_test.rb +0 -188
  138. data/test/unit/gateways/modern_payments_cim_test.rb +0 -162
  139. data/test/unit/gateways/moneris_test.rb +0 -158
  140. data/test/unit/gateways/net_registry_test.rb +0 -416
  141. data/test/unit/gateways/netbilling_test.rb +0 -54
  142. data/test/unit/gateways/ogone_test.rb +0 -319
  143. data/test/unit/gateways/pay_junction_test.rb +0 -123
  144. data/test/unit/gateways/pay_secure_test.rb +0 -71
  145. data/test/unit/gateways/payflow_express_test.rb +0 -173
  146. data/test/unit/gateways/payflow_express_uk_test.rb +0 -86
  147. data/test/unit/gateways/payflow_nvp_uk_test.rb +0 -205
  148. data/test/unit/gateways/payflow_test.rb +0 -305
  149. data/test/unit/gateways/payflow_uk_test.rb +0 -30
  150. data/test/unit/gateways/payment_express_test.rb +0 -195
  151. data/test/unit/gateways/paypal_express_test.rb +0 -389
  152. data/test/unit/gateways/paypal_test.rb +0 -569
  153. data/test/unit/gateways/plugnpay_test.rb +0 -86
  154. data/test/unit/gateways/psigate_test.rb +0 -169
  155. data/test/unit/gateways/psl_card_test.rb +0 -64
  156. data/test/unit/gateways/quickpay_test.rb +0 -112
  157. data/test/unit/gateways/realex_test.rb +0 -151
  158. data/test/unit/gateways/sage_bankcard_test.rb +0 -196
  159. data/test/unit/gateways/sage_pay_test.rb +0 -139
  160. data/test/unit/gateways/sage_virtual_check_test.rb +0 -71
  161. data/test/unit/gateways/sallie_mae_test.rb +0 -53
  162. data/test/unit/gateways/secure_pay_au_test.rb +0 -207
  163. data/test/unit/gateways/secure_pay_tech_test.rb +0 -44
  164. data/test/unit/gateways/secure_pay_test.rb +0 -101
  165. data/test/unit/gateways/skip_jack_test.rb +0 -228
  166. data/test/unit/gateways/trans_first_test.rb +0 -112
  167. data/test/unit/gateways/trust_commerce_test.rb +0 -90
  168. data/test/unit/gateways/usa_epay_test.rb +0 -128
  169. data/test/unit/gateways/verifi_test.rb +0 -96
  170. data/test/unit/gateways/viaklix_test.rb +0 -78
  171. data/test/unit/gateways/wirecard_test.rb +0 -250
  172. data/test/unit/generators/test_gateway_generator.rb +0 -46
  173. data/test/unit/generators/test_generator_helper.rb +0 -20
  174. data/test/unit/generators/test_integration_generator.rb +0 -53
  175. data/test/unit/integrations/action_view_helper_test.rb +0 -50
  176. data/test/unit/integrations/bogus_module_test.rb +0 -20
  177. data/test/unit/integrations/chronopay_module_test.rb +0 -13
  178. data/test/unit/integrations/gestpay_module_test.rb +0 -14
  179. data/test/unit/integrations/helpers/bogus_helper_test.rb +0 -28
  180. data/test/unit/integrations/helpers/chronopay_helper_test.rb +0 -110
  181. data/test/unit/integrations/helpers/gestpay_helper_test.rb +0 -100
  182. data/test/unit/integrations/helpers/hi_trust_helper_test.rb +0 -16
  183. data/test/unit/integrations/helpers/nochex_helper_test.rb +0 -53
  184. data/test/unit/integrations/helpers/paypal_helper_test.rb +0 -171
  185. data/test/unit/integrations/helpers/quickpay_helper_test.rb +0 -40
  186. data/test/unit/integrations/helpers/two_checkout_helper_test.rb +0 -92
  187. data/test/unit/integrations/hi_trust_module_test.rb +0 -13
  188. data/test/unit/integrations/nochex_module_test.rb +0 -13
  189. data/test/unit/integrations/notifications/chronopay_notification_test.rb +0 -66
  190. data/test/unit/integrations/notifications/gestpay_notification_test.rb +0 -60
  191. data/test/unit/integrations/notifications/hi_trust_notification_test.rb +0 -59
  192. data/test/unit/integrations/notifications/nochex_notification_test.rb +0 -51
  193. data/test/unit/integrations/notifications/notification_test.rb +0 -54
  194. data/test/unit/integrations/notifications/paypal_notification_test.rb +0 -85
  195. data/test/unit/integrations/notifications/quickpay_notification_test.rb +0 -69
  196. data/test/unit/integrations/notifications/two_checkout_notification_test.rb +0 -55
  197. data/test/unit/integrations/paypal_module_test.rb +0 -28
  198. data/test/unit/integrations/quickpay_module_test.rb +0 -9
  199. data/test/unit/integrations/returns/chronopay_return_test.rb +0 -11
  200. data/test/unit/integrations/returns/gestpay_return_test.rb +0 -10
  201. data/test/unit/integrations/returns/hi_trust_return_test.rb +0 -24
  202. data/test/unit/integrations/returns/nochex_return_test.rb +0 -10
  203. data/test/unit/integrations/returns/paypal_return_test.rb +0 -10
  204. data/test/unit/integrations/returns/return_test.rb +0 -11
  205. data/test/unit/integrations/returns/two_checkout_return_test.rb +0 -24
  206. data/test/unit/integrations/two_checkout_module_test.rb +0 -13
  207. data/test/unit/post_data_test.rb +0 -55
  208. data/test/unit/posts_data_test.rb +0 -48
  209. data/test/unit/response_test.rb +0 -28
  210. data/test/unit/utils_test.rb +0 -7
  211. data/test/unit/validateable_test.rb +0 -60
metadata.gz.sig CHANGED
Binary file
data/.gitignore DELETED
@@ -1,7 +0,0 @@
1
- .DS_Store
2
- *.orig
3
- *.swp
4
- *.swo
5
- .autotest
6
- *.gemspec
7
- pkg
data/Rakefile DELETED
@@ -1,85 +0,0 @@
1
- require 'rubygems'
2
- require 'lib/support/gateway_support'
3
- require 'lib/active_merchant'
4
-
5
- begin
6
- require 'jeweler'
7
- Jeweler::Tasks.new do |gemspec|
8
- gemspec.name = "smulube-activemerchant"
9
- gemspec.version = ActiveMerchant::VERSION
10
- gemspec.summary = 'Framework and tools for dealing with credit card transactions.'
11
- gemspec.description = 'Active Merchant is a simple payment abstraction library used in and sponsored by Shopify. It is written by Tobias Luetke, Cody Fauser, and contributors. The aim of the project is to feel natural to Ruby users and to abstract as many parts as possible away from the user to offer a consistent interface across all supported gateways.'
12
- gemspec.email = "tobi@leetsoft.com"
13
- gemspec.authors = ["Tobias Luetke", "Cody Fauser", "Dennis Thiesen", "Sam Mulube"]
14
- gemspec.homepage = 'http://activemerchant.org/'
15
- gemspec.add_dependency('activesupport', '>= 2.3.2')
16
- gemspec.add_dependency('builder', '>= 2.0.0')
17
-
18
- gemspec.signing_key = ENV['GEM_PRIVATE_KEY']
19
- gemspec.cert_chain = ['gem-public_cert.pem']
20
- end
21
- Jeweler::GemcutterTasks.new
22
- rescue LoadError
23
- puts "Jeweler not available. Install it with: gem install jeweler"
24
- end
25
-
26
- require 'rake/testtask'
27
- namespace :test do
28
- Rake::TestTask.new(:units) do |test|
29
- test.libs << 'lib' << 'test'
30
- test.pattern = 'test/unit/**/*_test.rb'
31
- test.verbose = true
32
- test.ruby_opts << '-rubygems'
33
- end
34
-
35
- Rake::TestTask.new(:remote) do |test|
36
- test.libs << 'lib' << 'test'
37
- test.pattern = 'test/remote/**/*_test.rb'
38
- test.verbose = true
39
- test.ruby_opts << '-rubygems'
40
- end
41
- end
42
-
43
- desc "Run the unit test suite"
44
- task :default => 'test:units'
45
-
46
- require 'rake/rdoctask'
47
- Rake::RDocTask.new do |rdoc|
48
- rdoc.rdoc_dir = 'doc'
49
- rdoc.title = "ActiveMerchant library"
50
- rdoc.options << '--line-numbers' << '--inline-source' << '--main=README.rdoc'
51
- rdoc.rdoc_files.include('README.rdoc', 'CHANGELOG')
52
- rdoc.rdoc_files.include('lib/**/*.rb')
53
- rdoc.rdoc_files.exclude('lib/tasks')
54
- end
55
-
56
- require 'rake/clean'
57
- CLEAN.include("pkg")
58
-
59
- namespace :gateways do
60
- desc 'Print the currently supported gateways'
61
- task :print do
62
- support = GatewaySupport.new
63
- support.to_s
64
- end
65
-
66
- namespace :print do
67
- desc 'Print the currently supported gateways in RDoc format'
68
- task :rdoc do
69
- support = GatewaySupport.new
70
- support.to_rdoc
71
- end
72
-
73
- desc 'Print the currently supported gateways in Textile format'
74
- task :textile do
75
- support = GatewaySupport.new
76
- support.to_textile
77
- end
78
-
79
- desc 'Print the gateway functionality supported by each gateway'
80
- task :features do
81
- support = GatewaySupport.new
82
- support.features
83
- end
84
- end
85
- end
@@ -1,5 +0,0 @@
1
- Description:
2
-
3
-
4
- Usage:
5
-
@@ -1,61 +0,0 @@
1
- class GatewayGenerator < RubiGen::Base
2
- LIB_DIR = "lib/active_merchant/billing/gateways/"
3
- UNIT_TEST_DIR = "test/unit/gateways/"
4
- REMOTE_TEST_DIR = "test/remote/gateways/"
5
-
6
-
7
- default_options :author => nil
8
-
9
- attr_reader :name
10
-
11
- def initialize(runtime_args, runtime_options = {})
12
- super
13
- usage if args.length < 1
14
- @name = args.shift
15
- extract_options
16
- end
17
-
18
- def class_name
19
- @name.classify
20
- end
21
-
22
- def manifest
23
- record do |m|
24
-
25
- m.directory LIB_DIR
26
- m.directory UNIT_TEST_DIR
27
- m.directory REMOTE_TEST_DIR
28
-
29
- m.template 'gateway.rb', LIB_DIR + "#{name}.rb"
30
- m.template 'gateway_test.rb', UNIT_TEST_DIR + "#{name}_test.rb"
31
- m.template 'remote_gateway_test.rb', REMOTE_TEST_DIR + "remote_#{name}_test.rb"
32
- end
33
- end
34
-
35
- protected
36
- def banner
37
- <<-EOS
38
- Creates a ...
39
-
40
- USAGE: #{$0} #{spec.name} name"
41
- EOS
42
- end
43
-
44
- def add_options!(opts)
45
- # opts.separator ''
46
- # opts.separator 'Options:'
47
- # For each option below, place the default
48
- # at the top of the file next to "default_options"
49
- # opts.on("-a", "--author=\"Your Name\"", String,
50
- # "Some comment about this option",
51
- # "Default: none") { |options[:author]| }
52
- # opts.on("-v", "--version", "Show the #{File.basename($0)} version number and quit.")
53
- end
54
-
55
- def extract_options
56
- # for each option, extract it into a local variable (and create an "attr_reader :author" at the top)
57
- # Templates can access these value via the attr_reader-generated methods, but not the
58
- # raw instance variable value.
59
- # @author = options[:author]
60
- end
61
- end
@@ -1,77 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- class <%= class_name %>Gateway < Gateway
4
- TEST_URL = 'https://example.com/test'
5
- LIVE_URL = 'https://example.com/live'
6
-
7
- # The countries the gateway supports merchants from as 2 digit ISO country codes
8
- self.supported_countries = ['US']
9
-
10
- # The card types supported by the payment gateway
11
- self.supported_cardtypes = [:visa, :master, :american_express, :discover]
12
-
13
- # The homepage URL of the gateway
14
- self.homepage_url = 'http://www.example.net/'
15
-
16
- # The name of the gateway
17
- self.display_name = 'New Gateway'
18
-
19
- def initialize(options = {})
20
- #requires!(options, :login, :password)
21
- @options = options
22
- super
23
- end
24
-
25
- def authorize(money, creditcard, options = {})
26
- post = {}
27
- add_invoice(post, options)
28
- add_creditcard(post, creditcard)
29
- add_address(post, creditcard, options)
30
- add_customer_data(post, options)
31
-
32
- commit('authonly', money, post)
33
- end
34
-
35
- def purchase(money, creditcard, options = {})
36
- post = {}
37
- add_invoice(post, options)
38
- add_creditcard(post, creditcard)
39
- add_address(post, creditcard, options)
40
- add_customer_data(post, options)
41
-
42
- commit('sale', money, post)
43
- end
44
-
45
- def capture(money, authorization, options = {})
46
- commit('capture', money, post)
47
- end
48
-
49
- private
50
-
51
- def add_customer_data(post, options)
52
- end
53
-
54
- def add_address(post, creditcard, options)
55
- end
56
-
57
- def add_invoice(post, options)
58
- end
59
-
60
- def add_creditcard(post, creditcard)
61
- end
62
-
63
- def parse(body)
64
- end
65
-
66
- def commit(action, money, parameters)
67
- end
68
-
69
- def message_from(response)
70
- end
71
-
72
- def post_data(action, parameters = {})
73
- end
74
- end
75
- end
76
- end
77
-
@@ -1,49 +0,0 @@
1
- require 'test_helper'
2
-
3
- class <%= class_name %>Test < Test::Unit::TestCase
4
- def setup
5
- @gateway = <%= class_name %>Gateway.new(
6
- :login => 'login',
7
- :password => 'password'
8
- )
9
-
10
- @credit_card = credit_card
11
- @amount = 100
12
-
13
- @options = {
14
- :order_id => '1',
15
- :billing_address => address,
16
- :description => 'Store Purchase'
17
- }
18
- end
19
-
20
- def test_successful_purchase
21
- @gateway.expects(:ssl_post).returns(successful_purchase_response)
22
-
23
- assert response = @gateway.purchase(@amount, @credit_card, @options)
24
- assert_instance_of
25
- assert_success response
26
-
27
- # Replace with authorization number from the successful response
28
- assert_equal '', response.authorization
29
- assert response.test?
30
- end
31
-
32
- def test_unsuccessful_request
33
- @gateway.expects(:ssl_post).returns(failed_purchase_response)
34
-
35
- assert response = @gateway.purchase(@amount, @credit_card, @options)
36
- assert_failure response
37
- assert response.test?
38
- end
39
-
40
- private
41
-
42
- # Place raw successful response from gateway here
43
- def successful_purchase_response
44
- end
45
-
46
- # Place raw failed response from gateway here
47
- def failed_purcahse_response
48
- end
49
- end
@@ -1,57 +0,0 @@
1
- require 'test_helper'
2
-
3
- class Remote<%= class_name %>Test < Test::Unit::TestCase
4
-
5
-
6
- def setup
7
- @gateway = <%= class_name %>Gateway.new(fixtures(:<%= class_name.underscore %>))
8
-
9
- @amount = 100
10
- @credit_card = credit_card('4000100011112224')
11
- @declined_card = credit_card('4000300011112220')
12
-
13
- @options = {
14
- :order_id => '1',
15
- :billing_address => address,
16
- :description => 'Store Purchase'
17
- }
18
- end
19
-
20
- def test_successful_purchase
21
- assert response = @gateway.purchase(@amount, @credit_card, @options)
22
- assert_success response
23
- assert_equal 'REPLACE WITH SUCCESS MESSAGE', response.message
24
- end
25
-
26
- def test_unsuccessful_purchase
27
- assert response = @gateway.purchase(@amount, @declined_card, @options)
28
- assert_failure response
29
- assert_equal 'REPLACE WITH FAILED PURCHASE MESSAGE', response.message
30
- end
31
-
32
- def test_authorize_and_capture
33
- amount = @amount
34
- assert auth = @gateway.authorize(amount, @credit_card, @options)
35
- assert_success auth
36
- assert_equal 'Success', auth.message
37
- assert auth.authorization
38
- assert capture = @gateway.capture(amount, auth.authorization)
39
- assert_success capture
40
- end
41
-
42
- def test_failed_capture
43
- assert response = @gateway.capture(@amount, '')
44
- assert_failure response
45
- assert_equal 'REPLACE WITH GATEWAY FAILURE MESSAGE', response.message
46
- end
47
-
48
- def test_invalid_login
49
- gateway = <%= class_name %>Gateway.new(
50
- :login => '',
51
- :password => ''
52
- )
53
- assert response = gateway.purchase(@amount, @credit_card, @options)
54
- assert_failure response
55
- assert_equal 'REPLACE WITH FAILURE MESSAGE', response.message
56
- end
57
- end
@@ -1,5 +0,0 @@
1
- Description:
2
-
3
-
4
- Usage:
5
-
@@ -1,68 +0,0 @@
1
- class IntegrationGenerator < RubiGen::Base
2
- BASE_DIR = "lib/active_merchant/billing/integrations/"
3
- TEST_DIR = "test/unit/integrations/"
4
-
5
- default_options :author => nil
6
-
7
- attr_reader :name
8
-
9
- def initialize(runtime_args, runtime_options = {})
10
- super
11
- usage if args.size < 1
12
- @name = args.shift
13
- extract_options
14
- end
15
-
16
- def class_name
17
- name.classify
18
- end
19
-
20
- def lib_dir
21
- BASE_DIR + name
22
- end
23
-
24
- def manifest
25
- record do |m|
26
- # Ensure appropriate folder(s) exists
27
- m.directory lib_dir
28
- m.directory TEST_DIR
29
- m.directory TEST_DIR + "helpers"
30
- m.directory TEST_DIR + "notifications"
31
-
32
- m.template 'integration.rb', "#{lib_dir}.rb"
33
- m.template 'helper.rb', lib_dir + "/helper.rb"
34
- m.template 'notification.rb', lib_dir + "/notification.rb"
35
-
36
- m.template 'module_test.rb', TEST_DIR + "#{name}_module_test.rb"
37
- m.template 'helper_test.rb', TEST_DIR + "helpers/#{name}_helper_test.rb"
38
- m.template 'notification_test.rb', TEST_DIR + "notifications/#{name}_notification_test.rb"
39
- end
40
- end
41
-
42
- protected
43
- def banner
44
- <<-EOS
45
- Creates a ...
46
-
47
- USAGE: #{$0} #{spec.name} name"
48
- EOS
49
- end
50
-
51
- def add_options!(opts)
52
- # opts.separator ''
53
- # opts.separator 'Options:'
54
- # For each option below, place the default
55
- # at the top of the file next to "default_options"
56
- # opts.on("-a", "--author=\"Your Name\"", String,
57
- # "Some comment about this option",
58
- # "Default: none") { |options[:author]| }
59
- # opts.on("-v", "--version", "Show the #{File.basename($0)} version number and quit.")
60
- end
61
-
62
- def extract_options
63
- # for each option, extract it into a local variable (and create an "attr_reader :author" at the top)
64
- # Templates can access these value via the attr_reader-generated methods, but not the
65
- # raw instance variable value.
66
- # @author = options[:author]
67
- end
68
- end
@@ -1,34 +0,0 @@
1
- module ActiveMerchant #:nodoc:
2
- module Billing #:nodoc:
3
- module Integrations #:nodoc:
4
- module <%= class_name %>
5
- class Helper < ActiveMerchant::Billing::Integrations::Helper
6
- # Replace with the real mapping
7
- mapping :account, ''
8
- mapping :amount, ''
9
-
10
- mapping :order, ''
11
-
12
- mapping :customer, :first_name => '',
13
- :last_name => '',
14
- :email => '',
15
- :phone => ''
16
-
17
- mapping :billing_address, :city => '',
18
- :address1 => '',
19
- :address2 => '',
20
- :state => '',
21
- :zip => '',
22
- :country => ''
23
-
24
- mapping :notify_url, ''
25
- mapping :return_url, ''
26
- mapping :cancel_return_url, ''
27
- mapping :description, ''
28
- mapping :tax, ''
29
- mapping :shipping, ''
30
- end
31
- end
32
- end
33
- end
34
- end