geti 1.9 → 3.1.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: d55a626a0189cb30bd0b4ef50e7407230d29fe03cb0162fb80ffa78aa12a3cd8
4
+ data.tar.gz: 367a74b042b28f6d3ab2e8ef145f4236460ff287865ed2ddb47e22053820d148
5
+ SHA512:
6
+ metadata.gz: e5eff1d02f8ee361fc1004b275b8cc0f8458d704b006b716b5b43abfbc38c0b74f01dec6ac3fb4194c73656897e5bba330dacbb8287b785044c351b9430e2ed1
7
+ data.tar.gz: 7d36228b44084bb8474f6cb227615ff94e89eaaeb096eca7c3f09a9ed57e1c20ae9dc88a5e81e6f8b7c931b5ccbe2775226189758ec45a241f041ac7694ba91a
data/History.txt CHANGED
@@ -1,3 +1,9 @@
1
+ === 3.1.1 / 2018-02-8
2
+
3
+ * 1 minor bug fix
4
+
5
+ * bump dependencies for CVE on nokogiri
6
+
1
7
  === 1.8.1 / 2013-03-26
2
8
 
3
9
  * 1 minor enhancement
@@ -9,4 +15,3 @@
9
15
  * 1 major enhancement
10
16
 
11
17
  * Previous Release via Jeweler
12
-
data/README.rdoc CHANGED
@@ -1,6 +1,6 @@
1
1
  = geti
2
2
 
3
- * https://github.com/versapay/geti
3
+ * github :: https://github.com/versapay/geti
4
4
 
5
5
  == DESCRIPTION:
6
6
 
@@ -47,11 +47,11 @@ Transaction Processing
47
47
 
48
48
  After checking out the source, bundle to install gems, run specs with `rspec`.
49
49
 
50
- If you want to run the specs in the remote dir, you'll need to provide
50
+ If you want to run the specs in the remote dir, you'll need to provide
51
51
  `config/test_credentials.yml` (an example file is present).
52
52
 
53
53
  === Contributing
54
-
54
+
55
55
  * Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
56
56
  * Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
57
57
  * Fork the project.
data/Rakefile CHANGED
@@ -10,22 +10,22 @@ Hoe.spec "geti" do
10
10
  developer("Jamie Macey", "jamie@tracefunc.com")
11
11
  license "MIT"
12
12
 
13
- dependency 'savon', "~> 1.0"
13
+ dependency 'savon', "~> 2.0"
14
14
  dependency 'httpi', ">0"
15
15
  dependency 'httpclient', ">0"
16
+ dependency 'nokogiri', ">0"
16
17
 
17
18
  # Development
18
- dependency 'rake', "< 0.9", :dev
19
+ dependency 'rake', ">0", :dev
19
20
  dependency 'bundler', '>0', :dev
20
21
  dependency "hoe", '>0', :dev
21
22
  dependency "hoe-bundler", '>0', :dev
22
23
  dependency "hoe-git", '>0', :dev
23
24
 
24
25
  # Test
25
- dependency "rcov", '>0', :dev
26
- dependency 'rspec', '>0', :dev
26
+ dependency "simplecov", '>0', :dev
27
+ dependency 'rspec', '<2.99', :dev
27
28
  dependency 'guard', '>0', :dev
28
29
  dependency 'guard-rspec', '>0', :dev
29
- dependency 'rb-fsevent', '~> 0.9.1', :dev
30
+ dependency 'rb-fsevent', '>0', :dev
30
31
  end
31
-
@@ -182,7 +182,7 @@ class Geti::AppClient < Geti::Client
182
182
  :isoID => opts[:iso_id] || "9999",
183
183
  :merchCrossRefID => opts[:id],
184
184
  :merchName => opts[:name], # Legal Name
185
- :merchTypeID => MERCHANT_TYPES.index(opts[:industry]), # "Type of goods sold"
185
+ :merchTypeID => MERCHANT_TYPES.key(opts[:industry]), # "Type of goods sold"
186
186
  :merchServiceType => opts[:service_type] || "GOLD",
187
187
  # TODO: Tax ID
188
188
  :merchAddress1 => opts[:address], # TODO: Is this mailing or DBA address?
@@ -271,7 +271,7 @@ class Geti::AppClient < Geti::Client
271
271
  end
272
272
 
273
273
  def service_address
274
- "https://#{domain}/webservices/AppGateway.asmx?WSDL"
274
+ "https://#{domain}/webservices/AppGateway.asmx"
275
275
  end
276
276
 
277
277
  def soap_header
@@ -298,7 +298,7 @@ class Geti::AppClient < Geti::Client
298
298
  end
299
299
 
300
300
  def merchant_ownership(opts)
301
- MERCHANT_OWNERSHIP.index((opts[:business_type]||'').gsub('_', ' '))
301
+ MERCHANT_OWNERSHIP.key((opts[:business_type]||'').gsub('_', ' '))
302
302
  end
303
303
 
304
304
  def taxpayer_info(opts)
@@ -87,7 +87,7 @@ class Geti::AuthClient < Geti::Client
87
87
  end
88
88
 
89
89
  def service_address
90
- "https://#{domain}/webservices/AuthGateway.asmx?WSDL"
90
+ "https://#{domain}/webservices/AuthGateway.asmx"
91
91
  end
92
92
 
93
93
  def soap_header
data/lib/geti/client.rb CHANGED
@@ -9,7 +9,19 @@ class Geti::Client
9
9
  end
10
10
 
11
11
  def soap_client
12
- @soap_client ||= Savon.client(service_address)
12
+ Savon.client do |savon|
13
+ savon.wsdl service_address + "?WSDL"
14
+ # not picking up https by default after change to TLSv1
15
+ savon.endpoint service_address
16
+ savon.soap_version 2
17
+ savon.ssl_version :TLSv1
18
+
19
+ # savon.log_level :debug
20
+ # savon.log true
21
+
22
+ savon.convert_request_keys_to :camelcase
23
+ savon.pretty_print_xml true
24
+ end
13
25
  end
14
26
 
15
27
  def data_packet
@@ -22,17 +34,18 @@ class Geti::Client
22
34
 
23
35
  def soap_request(operation, op_key=nil)
24
36
  operation.sub!('Certification','') unless certification?
25
- response = soap_client.request operation do
26
- http.headers.delete('SOAPAction')
27
- config.soap_header = soap_header
28
- soap.body = (yield if block_given?)
29
- end
30
37
 
31
38
  op_key ||= operation.gsub(/(.)([A-Z])/, '\1_\2').downcase
32
39
  op_key.sub!('_certification','') unless certification?
33
40
  response_key = (op_key+'_response').to_sym
34
41
  result_key = (op_key+'_result').to_sym
35
42
 
43
+ geti_soap_header = soap_header
44
+ response = soap_client.call(op_key.to_sym) do
45
+ soap_header geti_soap_header
46
+ message(yield) if block_given?
47
+ end
48
+
36
49
  xml_parser.parse(response.body[response_key][result_key])
37
50
  end
38
51
 
@@ -49,6 +62,6 @@ class Geti::Client
49
62
  end
50
63
 
51
64
  def xml_parser
52
- @xml_parser or Nori
65
+ @xml_parser or Nori.new(:convert_tags_to => lambda { |tag| tag.snakecase.to_sym })
53
66
  end
54
- end
67
+ end
data/lib/geti.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Geti
2
- VERSION = "1.9"
2
+ VERSION = "3.1.1"
3
3
  end
4
4
 
5
5
  require 'geti/client'
@@ -1,16 +1,10 @@
1
1
  require 'helper'
2
+ require 'savon/mock/spec_helper'
2
3
 
3
4
  describe Geti::AppClient do
4
- def mock_soap!(client, parsed_response, operation, op_key=nil)
5
- op_key ||= operation.gsub(/(.)([A-Z])/, '\1_\2').downcase
6
- response_key = (op_key+'_response').to_sym
7
- result_key = (op_key+'_result').to_sym
8
-
9
- data = OpenStruct.new(:body => {response_key => {result_key => :encoded_xml}})
10
-
11
- client.soap_client.should_receive(:request).with(operation).and_return(data)
12
- client.xml_parser.should_receive(:parse).with(:encoded_xml).and_return(parsed_response)
13
- end
5
+ include Savon::SpecHelper
6
+ before(:all) { savon.mock! }
7
+ after(:all) { savon.unmock! }
14
8
 
15
9
  def request_payload
16
10
  {
@@ -60,93 +54,16 @@ describe Geti::AppClient do
60
54
  Nori.parse("<?xml version=\"1.0\" encoding=\"utf-8\"?><soap:Envelope xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><soap:Body><BoardMerchant_ACHResponse xmlns=\"http://tempuri.org/GETI.eMagnus.WebServices/AppGateway\"><BoardMerchant_ACHResult>&lt;?xml version=\"1.0\" encoding=\"utf-8\"?&gt;&lt;RESPONSE xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"&gt;&lt;STATUS&gt;Pending&lt;/STATUS&gt;&lt;MESSAGE&gt;1 merchant(s) created.\n0 merchant(s) not created due to errors.\n\n-----------------------\nMerchants Created:\nMy Company (ISO ID: 10150, CrossRef: 83, Status: PendingInput)\n\n&lt;/MESSAGE&gt;&lt;APP_DATA&gt;&lt;Merchant ID=\"1844832\" /&gt;&lt;/APP_DATA&gt;&lt;VALIDATION_MESSAGE&gt;&lt;RESULT&gt;Passed&lt;/RESULT&gt;&lt;SCHEMA_FILE_PATH /&gt;&lt;/VALIDATION_MESSAGE&gt;&lt;/RESPONSE&gt;</BoardMerchant_ACHResult></BoardMerchant_ACHResponse></soap:Body></soap:Envelope>\n")[:envelope][:body]
61
55
  end
62
56
 
63
- def pending_response
64
- {:response=>
65
- {:status=>"Pending",
66
- :"@xmlns:xsd"=>"http://www.w3.org/2001/XMLSchema",
67
- :"@xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance",
68
- :message=>
69
- "1 merchant(s) created.\n0 merchant(s) not created due to errors.\n\n-----------------------\nMerchants Created:\nMy Company (ISO ID: 10150, CrossRef: 83, Status: PendingInput)\n\n",
70
- :validation_message=>{:schema_file_path=>nil, :result=>"Passed"},
71
- :app_data=>{:merchant=>{:@id=>"1844832"}}}}
72
- end
73
-
74
- def success_response
75
- {:response=>{
76
- :status=>"Approved",
77
- :message=>"1 merchant(s) created.\n0 merchant(s) not created due to errors.\n\n-----------------------\nMerchants Created:\nCogsley's Cogs (ISO ID: 9999, CrossRef: 123456, Status: AppApprovedandActivated)\n\n",
78
- :app_data=>{
79
- :merchant=>{
80
- :@name=>"Cogsley's Cogs",
81
- :@active=>"1",
82
- :@type=>"Merchant",
83
- :@cross_ref_id=>"123456",
84
- :@id=>"20",
85
- :location=>{
86
- :terminal=>{
87
- :@manual_entry=>"N",
88
- :@name=>"Lipman Nurit 3000-01 (111163) ",
89
- :@active=>"1",
90
- :@type=>"Terminal",
91
- :@cross_ref_id=>"41680",
92
- :@id=>"111163",
93
- :@mid=>"101-111163-606"},
94
- :@name=>"Cogsley's Cogs ",
95
- :@active=>"1",
96
- :@ach_name=>"COGSLEYSCOGS",
97
- :@type=>"Location",
98
- :@cross_ref_id=>"123456",
99
- :@id=>"31"},
100
- :poc1=>{
101
- :@password=>"UGPRDGIX",
102
- :@user_name=>"CCogsley",
103
- :@last_name=>"Cogsley",
104
- :@first_name=>"Carl"}}},
105
- :"@xmlns:xsd"=>"http://www.w3.org/2001/XMLSchema",
106
- :"@xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance",
107
- :validation_message=>{:result=>"Passed", :schema_file_path=>nil}}}
108
- end
109
-
110
- def error_response
111
- {:response=>{
112
- :"@xmlns:xsd"=>"http://www.w3.org/2001/XMLSchema",
113
- :"@xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance",
114
- :validation_message=>
115
- {:result=>"Failed",
116
- :schema_file_path=>
117
- "http://demo.eftchecks.com/WebServices/schemas/app/NewMerchApp_ACH.xsd",
118
- :validation_error=>
119
- [{:@line_number=>"1",
120
- :severity=>"Error",
121
- :message=>"The 'pocAddress1' attribute is not declared.",
122
- :@line_position=>"1193"},
123
- {:@line_number=>"1",
124
- :severity=>"Error",
125
- :message=>"The required attribute 'pocAddress' is missing.",
126
- :@line_position=>"1020"}]}}}
127
- end
128
-
129
- def repeat_response
130
- {:response=>{
131
- :status=>"Pending",
132
- :message=>
133
- "1 merchant(s) created.\n0 merchant(s) not created due to errors.\n\n-----------------------\nMerchants Created:\nCogsley's Cogs (ISO ID: 9999, CrossRef: 123456, Status: PendingInput)\n\n",
134
- :validation_message=>{:result=>"Passed", :schema_file_path=>nil},
135
- :"@xmlns:xsd"=>"http://www.w3.org/2001/XMLSchema",
136
- :"@xmlns:xsi"=>"http://www.w3.org/2001/XMLSchema-instance",
137
- :app_data=>{:merchant=>{:@id=>"21"}}}}
138
- end
139
-
140
57
  describe '#board_merchant_ach' do
141
58
  it 'calls BoardCertificationMerchant_ACH' do
59
+ savon.expects(:board_certification_merchant_ach).with(:message => :any).returns(fixture(:board_certification_merchant_ach_pending))
142
60
  client = Geti::AppClient.new(test_credentials, {})
143
- mock_soap!(client, pending_response, "BoardCertificationMerchant_ACH", "board_certification_merchant_ach")
144
61
  client.board_merchant_ach(request_payload)
145
62
  end
146
63
 
147
64
  it 'calls BoardMerchant_ACH in production' do
65
+ savon.expects(:board_merchant_ach).with(:message => :any).returns(fixture(:board_merchant_ach))
148
66
  client = Geti::AppClient.new(test_credentials, {}, 'production')
149
- mock_soap!(client, pending_response, "BoardMerchant_ACH", "board_merchant_ach")
150
67
  client.board_merchant_ach(request_payload)
151
68
  end
152
69
 
@@ -228,15 +145,17 @@ describe Geti::AppClient do
228
145
  end
229
146
 
230
147
  describe 'response on success' do
231
- let(:client) {
232
- Geti::AppClient.new(test_credentials, {}).tap{|c|
233
- mock_soap!(c, response, "BoardCertificationMerchant_ACH", "board_certification_merchant_ach")
234
- }
235
- }
148
+ before do
149
+ savon.expects(:board_certification_merchant_ach).
150
+ with(:message => :any).
151
+ returns(response)
152
+ end
153
+
154
+ let(:client) { Geti::AppClient.new(test_credentials, {}) }
236
155
  subject { client.board_merchant_ach(request_payload) }
237
156
 
238
157
  describe 'on pending' do
239
- let(:response) { pending_response }
158
+ let(:response) { fixture(:board_certification_merchant_ach_pending) }
240
159
  its([:success]) { should be_true }
241
160
  its([:status]) { should eq("Pending") }
242
161
 
@@ -246,7 +165,7 @@ describe Geti::AppClient do
246
165
  end
247
166
 
248
167
  describe 'on success' do
249
- let(:response) { success_response }
168
+ let(:response) { fixture(:board_certification_merchant_ach_approved) }
250
169
  its([:success]) { should be_true }
251
170
  its([:status]) { should eq("Approved") }
252
171
 
@@ -256,13 +175,13 @@ describe Geti::AppClient do
256
175
  end
257
176
 
258
177
  describe 'on repeat' do
259
- let(:response) { repeat_response }
178
+ let(:response) { fixture(:board_certification_merchant_ach_repeat) }
260
179
  its([:success]) { should be_true }
261
180
  its([:status]) { should eq("Pending") }
262
181
  end
263
182
 
264
183
  describe 'on error' do
265
- let(:response) { error_response }
184
+ let(:response) { fixture(:board_certification_merchant_ach_error) }
266
185
  its([:success]) { should be_false }
267
186
  its([:status]) { should be_nil }
268
187
  end
@@ -270,9 +189,8 @@ describe Geti::AppClient do
270
189
 
271
190
  describe 'production response handling' do
272
191
  it 'does not error' do
273
- client = Geti::AppClient.new(test_credentials, {}, 'production').tap{|c|
274
- c.soap_client.should_receive(:request).with("BoardMerchant_ACH").and_return(OpenStruct.new(:body => production_soap_response))
275
- }
192
+ savon.expects(:board_merchant_ach).with(:message => :any).returns(fixture(:board_merchant_ach))
193
+ client = Geti::AppClient.new(test_credentials, {}, 'production')
276
194
 
277
195
  response = client.board_merchant_ach(request_payload)
278
196
  end
@@ -1,27 +1,21 @@
1
1
  require 'helper'
2
+ require 'savon/mock/spec_helper'
2
3
 
3
4
  describe Geti::AuthClient do
4
- def mock_soap!(client, parsed_response, operation, op_key=nil)
5
- op_key ||= operation.gsub(/(.)([A-Z])/, '\1_\2').downcase
6
- response_key = (op_key+'_response').to_sym
7
- result_key = (op_key+'_result').to_sym
8
-
9
- data = OpenStruct.new(:body => {response_key => {result_key => :encoded_xml}})
10
-
11
- client.soap_client.should_receive(:request).with(operation).and_return(data)
12
- client.xml_parser.should_receive(:parse).with(:encoded_xml).and_return(parsed_response)
13
- end
5
+ include Savon::SpecHelper
6
+ before(:all) { savon.mock! }
7
+ after(:all) { savon.unmock! }
14
8
 
15
9
  describe '#get_terminal_settings' do
16
10
  it 'calls GetCertificationTerminalSettings' do
17
11
  client = Geti::AuthClient.new(test_credentials, {:sec_code => 'WEB', :verify => []})
18
- mock_soap!(client, {}, "GetCertificationTerminalSettings")
12
+ savon.expects(:get_certification_terminal_settings).returns(fixture(:get_certification_terminal_settings))
19
13
  client.get_terminal_settings
20
14
  end
21
15
 
22
16
  it 'calls GetTerminalSettings in production' do
23
17
  client = Geti::AuthClient.new(test_credentials, {:sec_code => 'WEB', :verify => []}, 'production')
24
- mock_soap!(client, {}, "GetTerminalSettings")
18
+ savon.expects(:get_terminal_settings).returns(fixture(:get_terminal_settings))
25
19
  client.get_terminal_settings
26
20
  end
27
21
  end
data/spec/helper.rb CHANGED
@@ -23,15 +23,14 @@ $LOAD_PATH.unshift(File.dirname(__FILE__))
23
23
  require 'pp'
24
24
  require 'geti'
25
25
 
26
-
27
- Savon.configure do |config|
28
- config.log = HTTPI.log = false unless ENV['SOAP_DEBUG']
29
- end
30
-
31
26
  def test_credentials(env='app')
32
27
  YAML.load(File.read('config/test_credentials.yml'))[env]
33
28
  end
34
29
 
30
+ def fixture(name)
31
+ File.read(File.expand_path("./spec/fixtures/#{name}.xml"))
32
+ end
33
+
35
34
  def xit(*args, &block)
36
35
  # noop, disabled spec.
37
36
  end
metadata CHANGED
@@ -1,234 +1,242 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: geti
3
- version: !ruby/object:Gem::Version
4
- hash: 29
5
- prerelease:
6
- segments:
7
- - 1
8
- - 9
9
- version: "1.9"
3
+ version: !ruby/object:Gem::Version
4
+ version: 3.1.1
10
5
  platform: ruby
11
- authors:
6
+ authors:
12
7
  - Jamie Macey
13
- autorequire:
8
+ autorequire:
14
9
  bindir: bin
15
10
  cert_chain: []
16
-
17
- date: 2013-04-10 00:00:00 Z
18
- dependencies:
19
- - !ruby/object:Gem::Dependency
20
- requirement: &id001 !ruby/object:Gem::Requirement
21
- none: false
22
- requirements:
23
- - - ~>
24
- - !ruby/object:Gem::Version
25
- hash: 15
26
- segments:
27
- - 1
28
- - 0
29
- version: "1.0"
30
- version_requirements: *id001
11
+ date: 2024-10-22 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
31
14
  name: savon
32
- prerelease: false
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '2.0'
33
20
  type: :runtime
34
- - !ruby/object:Gem::Dependency
35
- requirement: &id002 !ruby/object:Gem::Requirement
36
- none: false
37
- requirements:
38
- - - ">"
39
- - !ruby/object:Gem::Version
40
- hash: 3
41
- segments:
42
- - 0
43
- version: "0"
44
- version_requirements: *id002
45
- name: httpi
46
21
  prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '2.0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: httpi
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">"
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
47
34
  type: :runtime
48
- - !ruby/object:Gem::Dependency
49
- requirement: &id003 !ruby/object:Gem::Requirement
50
- none: false
51
- requirements:
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
52
38
  - - ">"
53
- - !ruby/object:Gem::Version
54
- hash: 3
55
- segments:
56
- - 0
57
- version: "0"
58
- version_requirements: *id003
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
59
42
  name: httpclient
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">"
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
60
49
  prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">"
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: nokogiri
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">"
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
61
62
  type: :runtime
62
- - !ruby/object:Gem::Dependency
63
- requirement: &id004 !ruby/object:Gem::Requirement
64
- none: false
65
- requirements:
66
- - - ~>
67
- - !ruby/object:Gem::Version
68
- hash: 19
69
- segments:
70
- - 3
71
- - 10
72
- version: "3.10"
73
- version_requirements: *id004
74
- name: rdoc
75
63
  prerelease: false
76
- type: :development
77
- - !ruby/object:Gem::Dependency
78
- requirement: &id005 !ruby/object:Gem::Requirement
79
- none: false
80
- requirements:
81
- - - <
82
- - !ruby/object:Gem::Version
83
- hash: 25
84
- segments:
85
- - 0
86
- - 9
87
- version: "0.9"
88
- version_requirements: *id005
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">"
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
89
70
  name: rake
90
- prerelease: false
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">"
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
91
76
  type: :development
92
- - !ruby/object:Gem::Dependency
93
- requirement: &id006 !ruby/object:Gem::Requirement
94
- none: false
95
- requirements:
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
96
80
  - - ">"
97
- - !ruby/object:Gem::Version
98
- hash: 3
99
- segments:
100
- - 0
101
- version: "0"
102
- version_requirements: *id006
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
83
+ - !ruby/object:Gem::Dependency
103
84
  name: bundler
104
- prerelease: false
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">"
88
+ - !ruby/object:Gem::Version
89
+ version: '0'
105
90
  type: :development
106
- - !ruby/object:Gem::Dependency
107
- requirement: &id007 !ruby/object:Gem::Requirement
108
- none: false
109
- requirements:
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
110
94
  - - ">"
111
- - !ruby/object:Gem::Version
112
- hash: 3
113
- segments:
114
- - 0
115
- version: "0"
116
- version_requirements: *id007
95
+ - !ruby/object:Gem::Version
96
+ version: '0'
97
+ - !ruby/object:Gem::Dependency
117
98
  name: hoe
118
- prerelease: false
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">"
102
+ - !ruby/object:Gem::Version
103
+ version: '0'
119
104
  type: :development
120
- - !ruby/object:Gem::Dependency
121
- requirement: &id008 !ruby/object:Gem::Requirement
122
- none: false
123
- requirements:
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
124
108
  - - ">"
125
- - !ruby/object:Gem::Version
126
- hash: 3
127
- segments:
128
- - 0
129
- version: "0"
130
- version_requirements: *id008
109
+ - !ruby/object:Gem::Version
110
+ version: '0'
111
+ - !ruby/object:Gem::Dependency
131
112
  name: hoe-bundler
132
- prerelease: false
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - ">"
116
+ - !ruby/object:Gem::Version
117
+ version: '0'
133
118
  type: :development
134
- - !ruby/object:Gem::Dependency
135
- requirement: &id009 !ruby/object:Gem::Requirement
136
- none: false
137
- requirements:
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
138
122
  - - ">"
139
- - !ruby/object:Gem::Version
140
- hash: 3
141
- segments:
142
- - 0
143
- version: "0"
144
- version_requirements: *id009
123
+ - !ruby/object:Gem::Version
124
+ version: '0'
125
+ - !ruby/object:Gem::Dependency
145
126
  name: hoe-git
146
- prerelease: false
147
- type: :development
148
- - !ruby/object:Gem::Dependency
149
- requirement: &id010 !ruby/object:Gem::Requirement
150
- none: false
151
- requirements:
127
+ requirement: !ruby/object:Gem::Requirement
128
+ requirements:
152
129
  - - ">"
153
- - !ruby/object:Gem::Version
154
- hash: 3
155
- segments:
156
- - 0
157
- version: "0"
158
- version_requirements: *id010
159
- name: rcov
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ type: :development
160
133
  prerelease: false
134
+ version_requirements: !ruby/object:Gem::Requirement
135
+ requirements:
136
+ - - ">"
137
+ - !ruby/object:Gem::Version
138
+ version: '0'
139
+ - !ruby/object:Gem::Dependency
140
+ name: simplecov
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">"
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
161
146
  type: :development
162
- - !ruby/object:Gem::Dependency
163
- requirement: &id011 !ruby/object:Gem::Requirement
164
- none: false
165
- requirements:
147
+ prerelease: false
148
+ version_requirements: !ruby/object:Gem::Requirement
149
+ requirements:
166
150
  - - ">"
167
- - !ruby/object:Gem::Version
168
- hash: 3
169
- segments:
170
- - 0
171
- version: "0"
172
- version_requirements: *id011
151
+ - !ruby/object:Gem::Version
152
+ version: '0'
153
+ - !ruby/object:Gem::Dependency
173
154
  name: rspec
174
- prerelease: false
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "<"
158
+ - !ruby/object:Gem::Version
159
+ version: '2.99'
175
160
  type: :development
176
- - !ruby/object:Gem::Dependency
177
- requirement: &id012 !ruby/object:Gem::Requirement
178
- none: false
179
- requirements:
180
- - - ">"
181
- - !ruby/object:Gem::Version
182
- hash: 3
183
- segments:
184
- - 0
185
- version: "0"
186
- version_requirements: *id012
187
- name: guard
188
161
  prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "<"
165
+ - !ruby/object:Gem::Version
166
+ version: '2.99'
167
+ - !ruby/object:Gem::Dependency
168
+ name: guard
169
+ requirement: !ruby/object:Gem::Requirement
170
+ requirements:
171
+ - - ">"
172
+ - !ruby/object:Gem::Version
173
+ version: '0'
189
174
  type: :development
190
- - !ruby/object:Gem::Dependency
191
- requirement: &id013 !ruby/object:Gem::Requirement
192
- none: false
193
- requirements:
175
+ prerelease: false
176
+ version_requirements: !ruby/object:Gem::Requirement
177
+ requirements:
194
178
  - - ">"
195
- - !ruby/object:Gem::Version
196
- hash: 3
197
- segments:
198
- - 0
199
- version: "0"
200
- version_requirements: *id013
179
+ - !ruby/object:Gem::Version
180
+ version: '0'
181
+ - !ruby/object:Gem::Dependency
201
182
  name: guard-rspec
202
- prerelease: false
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - ">"
186
+ - !ruby/object:Gem::Version
187
+ version: '0'
203
188
  type: :development
204
- - !ruby/object:Gem::Dependency
205
- requirement: &id014 !ruby/object:Gem::Requirement
206
- none: false
207
- requirements:
208
- - - ~>
209
- - !ruby/object:Gem::Version
210
- hash: 57
211
- segments:
212
- - 0
213
- - 9
214
- - 1
215
- version: 0.9.1
216
- version_requirements: *id014
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - ">"
193
+ - !ruby/object:Gem::Version
194
+ version: '0'
195
+ - !ruby/object:Gem::Dependency
217
196
  name: rb-fsevent
197
+ requirement: !ruby/object:Gem::Requirement
198
+ requirements:
199
+ - - ">"
200
+ - !ruby/object:Gem::Version
201
+ version: '0'
202
+ type: :development
218
203
  prerelease: false
204
+ version_requirements: !ruby/object:Gem::Requirement
205
+ requirements:
206
+ - - ">"
207
+ - !ruby/object:Gem::Version
208
+ version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: rdoc
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '4.0'
216
+ - - "<"
217
+ - !ruby/object:Gem::Version
218
+ version: '7'
219
219
  type: :development
220
- description: A middleware gem for interfacing with Global eTelecom's ACH processing service.
221
- email:
220
+ prerelease: false
221
+ version_requirements: !ruby/object:Gem::Requirement
222
+ requirements:
223
+ - - ">="
224
+ - !ruby/object:Gem::Version
225
+ version: '4.0'
226
+ - - "<"
227
+ - !ruby/object:Gem::Version
228
+ version: '7'
229
+ description: A middleware gem for interfacing with Global eTelecom's ACH processing
230
+ service.
231
+ email:
222
232
  - jamie@tracefunc.com
223
233
  executables: []
224
-
225
234
  extensions: []
226
-
227
- extra_rdoc_files:
235
+ extra_rdoc_files:
228
236
  - History.txt
229
237
  - Manifest.txt
230
238
  - README.rdoc
231
- files:
239
+ files:
232
240
  - History.txt
233
241
  - Manifest.txt
234
242
  - README.rdoc
@@ -245,40 +253,29 @@ files:
245
253
  - spec/remote/geti_app_client_spec.rb
246
254
  - spec/remote/geti_auth_client_spec.rb
247
255
  - spec/remote/sample.pdf
248
- - .gemtest
249
256
  homepage: https://github.com/versapay/geti
250
- licenses:
257
+ licenses:
251
258
  - MIT
252
- post_install_message:
253
- rdoc_options:
254
- - --main
259
+ metadata: {}
260
+ post_install_message:
261
+ rdoc_options:
262
+ - "--main"
255
263
  - README.rdoc
256
- require_paths:
264
+ require_paths:
257
265
  - lib
258
- required_ruby_version: !ruby/object:Gem::Requirement
259
- none: false
260
- requirements:
266
+ required_ruby_version: !ruby/object:Gem::Requirement
267
+ requirements:
261
268
  - - ">="
262
- - !ruby/object:Gem::Version
263
- hash: 3
264
- segments:
265
- - 0
266
- version: "0"
267
- required_rubygems_version: !ruby/object:Gem::Requirement
268
- none: false
269
- requirements:
269
+ - !ruby/object:Gem::Version
270
+ version: '0'
271
+ required_rubygems_version: !ruby/object:Gem::Requirement
272
+ requirements:
270
273
  - - ">="
271
- - !ruby/object:Gem::Version
272
- hash: 3
273
- segments:
274
- - 0
275
- version: "0"
274
+ - !ruby/object:Gem::Version
275
+ version: '0'
276
276
  requirements: []
277
-
278
- rubyforge_project: geti
279
- rubygems_version: 1.8.24
280
- signing_key:
281
- specification_version: 3
277
+ rubygems_version: 3.5.9
278
+ signing_key:
279
+ specification_version: 4
282
280
  summary: A middleware gem for interfacing with Global eTelecom's ACH processing service.
283
281
  test_files: []
284
-
data/.gemtest DELETED
File without changes