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 +7 -0
- data/History.txt +6 -1
- data/README.rdoc +3 -3
- data/Rakefile +6 -6
- data/lib/geti/app_client.rb +3 -3
- data/lib/geti/auth_client.rb +1 -1
- data/lib/geti/client.rb +21 -8
- data/lib/geti.rb +1 -1
- data/spec/geti_app_client_spec.rb +19 -101
- data/spec/geti_auth_client_spec.rb +6 -12
- data/spec/helper.rb +4 -5
- metadata +209 -212
- data/.gemtest +0 -0
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
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', "~>
|
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', "
|
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 "
|
26
|
-
dependency 'rspec', '
|
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', '
|
30
|
+
dependency 'rb-fsevent', '>0', :dev
|
30
31
|
end
|
31
|
-
|
data/lib/geti/app_client.rb
CHANGED
@@ -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.
|
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
|
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.
|
301
|
+
MERCHANT_OWNERSHIP.key((opts[:business_type]||'').gsub('_', ' '))
|
302
302
|
end
|
303
303
|
|
304
304
|
def taxpayer_info(opts)
|
data/lib/geti/auth_client.rb
CHANGED
data/lib/geti/client.rb
CHANGED
@@ -9,7 +9,19 @@ class Geti::Client
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def soap_client
|
12
|
-
|
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,16 +1,10 @@
|
|
1
1
|
require 'helper'
|
2
|
+
require 'savon/mock/spec_helper'
|
2
3
|
|
3
4
|
describe Geti::AppClient do
|
4
|
-
|
5
|
-
|
6
|
-
|
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><?xml version=\"1.0\" encoding=\"utf-8\"?><RESPONSE xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"><STATUS>Pending</STATUS><MESSAGE>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</MESSAGE><APP_DATA><Merchant ID=\"1844832\" /></APP_DATA><VALIDATION_MESSAGE><RESULT>Passed</RESULT><SCHEMA_FILE_PATH /></VALIDATION_MESSAGE></RESPONSE></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
|
-
|
232
|
-
|
233
|
-
|
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) {
|
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) {
|
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) {
|
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) {
|
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
|
-
|
274
|
-
|
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
|
-
|
5
|
-
|
6
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
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
|
-
|
18
|
-
|
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
|
-
|
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
|
-
|
49
|
-
|
50
|
-
|
51
|
-
requirements:
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
52
38
|
- - ">"
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
|
55
|
-
|
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
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
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
|
-
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
91
76
|
type: :development
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
requirements:
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
96
80
|
- - ">"
|
97
|
-
- !ruby/object:Gem::Version
|
98
|
-
|
99
|
-
|
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
|
-
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
105
90
|
type: :development
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
requirements:
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
110
94
|
- - ">"
|
111
|
-
- !ruby/object:Gem::Version
|
112
|
-
|
113
|
-
|
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
|
-
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
119
104
|
type: :development
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
requirements:
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
124
108
|
- - ">"
|
125
|
-
- !ruby/object:Gem::Version
|
126
|
-
|
127
|
-
|
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
|
-
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">"
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
133
118
|
type: :development
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
requirements:
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
138
122
|
- - ">"
|
139
|
-
- !ruby/object:Gem::Version
|
140
|
-
|
141
|
-
|
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
|
-
|
147
|
-
|
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
|
-
|
155
|
-
|
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
|
-
|
163
|
-
|
164
|
-
|
165
|
-
requirements:
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
166
150
|
- - ">"
|
167
|
-
- !ruby/object:Gem::Version
|
168
|
-
|
169
|
-
|
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
|
-
|
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
|
-
|
191
|
-
|
192
|
-
|
193
|
-
requirements:
|
175
|
+
prerelease: false
|
176
|
+
version_requirements: !ruby/object:Gem::Requirement
|
177
|
+
requirements:
|
194
178
|
- - ">"
|
195
|
-
- !ruby/object:Gem::Version
|
196
|
-
|
197
|
-
|
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
|
-
|
183
|
+
requirement: !ruby/object:Gem::Requirement
|
184
|
+
requirements:
|
185
|
+
- - ">"
|
186
|
+
- !ruby/object:Gem::Version
|
187
|
+
version: '0'
|
203
188
|
type: :development
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
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
|
-
|
221
|
-
|
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
|
-
|
253
|
-
|
254
|
-
|
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
|
-
|
260
|
-
requirements:
|
266
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
267
|
+
requirements:
|
261
268
|
- - ">="
|
262
|
-
- !ruby/object:Gem::Version
|
263
|
-
|
264
|
-
|
265
|
-
|
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
|
-
|
273
|
-
segments:
|
274
|
-
- 0
|
275
|
-
version: "0"
|
274
|
+
- !ruby/object:Gem::Version
|
275
|
+
version: '0'
|
276
276
|
requirements: []
|
277
|
-
|
278
|
-
|
279
|
-
|
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
|