geti 1.7.0 → 1.8.0

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.
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gem 'savon', "~> 1.0"
4
4
  gem 'httpi'
@@ -1,5 +1,5 @@
1
1
  GEM
2
- remote: http://rubygems.org/
2
+ remote: https://rubygems.org/
3
3
  specs:
4
4
  akami (1.2.0)
5
5
  gyoku (>= 0.4.0)
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.7.0
1
+ 1.8.0
@@ -0,0 +1,83 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "geti"
8
+ s.version = "1.8.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Jamie Macey"]
12
+ s.date = "2013-03-19"
13
+ s.description = "API wrapper for GETI, an ACH provider"
14
+ s.email = "jamie@tracefunc.com"
15
+ s.extra_rdoc_files = [
16
+ "LICENSE.txt",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ "Gemfile",
22
+ "Gemfile.lock",
23
+ "Guardfile",
24
+ "LICENSE.txt",
25
+ "README.rdoc",
26
+ "Rakefile",
27
+ "VERSION",
28
+ "certify.rb",
29
+ "config/test_credentials.yml.example",
30
+ "doc/.DS_Store",
31
+ "doc/implementation_notes.md",
32
+ "doc/readme.txt",
33
+ "geti.gemspec",
34
+ "lib/geti.rb",
35
+ "lib/geti/app_client.rb",
36
+ "lib/geti/auth_client.rb",
37
+ "lib/geti/client.rb",
38
+ "lib/geti/response.rb",
39
+ "lib/geti/terminal_settings.rb",
40
+ "spec/geti_app_client_spec.rb",
41
+ "spec/geti_auth_client_spec.rb",
42
+ "spec/helper.rb",
43
+ "spec/remote/geti_app_client_spec.rb",
44
+ "spec/remote/geti_auth_client_spec.rb",
45
+ "spec/remote/sample.pdf"
46
+ ]
47
+ s.homepage = "http://github.com/jamie/geti"
48
+ s.licenses = ["MIT"]
49
+ s.require_paths = ["lib"]
50
+ s.rubygems_version = "1.8.24"
51
+ s.summary = "API wrapper for GETI, an ACH provider"
52
+
53
+ if s.respond_to? :specification_version then
54
+ s.specification_version = 3
55
+
56
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
57
+ s.add_runtime_dependency(%q<savon>, ["~> 1.0"])
58
+ s.add_runtime_dependency(%q<httpi>, [">= 0"])
59
+ s.add_runtime_dependency(%q<httpclient>, [">= 0"])
60
+ s.add_development_dependency(%q<rake>, ["< 0.9"])
61
+ s.add_development_dependency(%q<bundler>, [">= 0"])
62
+ s.add_development_dependency(%q<jeweler>, ["~> 1.8.4"])
63
+ s.add_development_dependency(%q<rcov>, [">= 0"])
64
+ else
65
+ s.add_dependency(%q<savon>, ["~> 1.0"])
66
+ s.add_dependency(%q<httpi>, [">= 0"])
67
+ s.add_dependency(%q<httpclient>, [">= 0"])
68
+ s.add_dependency(%q<rake>, ["< 0.9"])
69
+ s.add_dependency(%q<bundler>, [">= 0"])
70
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
71
+ s.add_dependency(%q<rcov>, [">= 0"])
72
+ end
73
+ else
74
+ s.add_dependency(%q<savon>, ["~> 1.0"])
75
+ s.add_dependency(%q<httpi>, [">= 0"])
76
+ s.add_dependency(%q<httpclient>, [">= 0"])
77
+ s.add_dependency(%q<rake>, ["< 0.9"])
78
+ s.add_dependency(%q<bundler>, [">= 0"])
79
+ s.add_dependency(%q<jeweler>, ["~> 1.8.4"])
80
+ s.add_dependency(%q<rcov>, [">= 0"])
81
+ end
82
+ end
83
+
@@ -284,7 +284,12 @@ class Geti::AppClient < Geti::Client
284
284
  end
285
285
 
286
286
  def comments(opts)
287
- [taxpayer_info(opts), ip_address(opts)].compact.join(', ')
287
+ [taxpayer_info(opts), ip_address(opts), email_address(opts)].compact.join(', ')
288
+ end
289
+
290
+ def email_address(opts)
291
+ return unless opts[:email]
292
+ "Email: %s" % opts[:email]
288
293
  end
289
294
 
290
295
  def ip_address(opts)
@@ -52,6 +52,7 @@ describe Geti::AppClient do
52
52
  :account_number => "123456789",
53
53
 
54
54
  :ip => '127.0.0.1',
55
+ :email => 'bob@example.com'
55
56
  }
56
57
  end
57
58
 
@@ -152,17 +153,37 @@ describe Geti::AppClient do
152
153
  describe 'comments field' do
153
154
  before do
154
155
  client = Geti::AppClient.new(test_credentials, {})
155
- @xml = client.data(Builder::XmlMarkup.new, request_payload)
156
+ @full_xml = client.data(Builder::XmlMarkup.new, request_payload)
157
+
158
+ client = Geti::AppClient.new(test_credentials, {})
159
+ payload = request_payload.dup
160
+ payload.delete(:ip)
161
+ payload.delete(:email)
162
+ @sparse_xml = client.data(Builder::XmlMarkup.new, payload)
156
163
  end
157
164
 
158
165
  it 'fills with taxpayer info' do
159
- @xml =~ /merchComments="([^"]+)"/
166
+ @full_xml =~ /merchComments="([^"]+)"/
167
+ $1.should match("Tax Info: Carl Cogsley - 123456789")
168
+
169
+ @sparse_xml =~ /merchComments="([^"]+)"/
160
170
  $1.should match("Tax Info: Carl Cogsley - 123456789")
161
171
  end
162
172
 
163
173
  it 'fills with signup IP' do
164
- @xml =~ /merchComments="([^"]+)"/
174
+ @full_xml =~ /merchComments="([^"]+)"/
165
175
  $1.should match("Signup IP: 127.0.0.1")
176
+
177
+ @sparse_xml =~ /merchComments="([^"]+)"/
178
+ $1.should_not match("IP")
179
+ end
180
+
181
+ it 'fills with signup email' do
182
+ @full_xml =~ /merchComments="([^"]+)"/
183
+ $1.should match("Email: bob@example.com")
184
+
185
+ @sparse_xml =~ /merchComments="([^"]+)"/
186
+ $1.should_not match("Email")
166
187
  end
167
188
  end
168
189
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geti
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 55
5
5
  prerelease:
6
6
  segments:
7
7
  - 1
8
- - 7
8
+ - 8
9
9
  - 0
10
- version: 1.7.0
10
+ version: 1.8.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jamie Macey
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2013-02-07 00:00:00 Z
18
+ date: 2013-03-19 00:00:00 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  requirement: &id001 !ruby/object:Gem::Requirement
@@ -28,10 +28,10 @@ dependencies:
28
28
  - 1
29
29
  - 0
30
30
  version: "1.0"
31
+ version_requirements: *id001
32
+ name: savon
31
33
  prerelease: false
32
34
  type: :runtime
33
- name: savon
34
- version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
36
36
  requirement: &id002 !ruby/object:Gem::Requirement
37
37
  none: false
@@ -42,10 +42,10 @@ dependencies:
42
42
  segments:
43
43
  - 0
44
44
  version: "0"
45
+ version_requirements: *id002
46
+ name: httpi
45
47
  prerelease: false
46
48
  type: :runtime
47
- name: httpi
48
- version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
50
50
  requirement: &id003 !ruby/object:Gem::Requirement
51
51
  none: false
@@ -56,10 +56,10 @@ dependencies:
56
56
  segments:
57
57
  - 0
58
58
  version: "0"
59
+ version_requirements: *id003
60
+ name: httpclient
59
61
  prerelease: false
60
62
  type: :runtime
61
- name: httpclient
62
- version_requirements: *id003
63
63
  - !ruby/object:Gem::Dependency
64
64
  requirement: &id004 !ruby/object:Gem::Requirement
65
65
  none: false
@@ -71,10 +71,10 @@ dependencies:
71
71
  - 0
72
72
  - 9
73
73
  version: "0.9"
74
+ version_requirements: *id004
75
+ name: rake
74
76
  prerelease: false
75
77
  type: :development
76
- name: rake
77
- version_requirements: *id004
78
78
  - !ruby/object:Gem::Dependency
79
79
  requirement: &id005 !ruby/object:Gem::Requirement
80
80
  none: false
@@ -85,10 +85,10 @@ dependencies:
85
85
  segments:
86
86
  - 0
87
87
  version: "0"
88
+ version_requirements: *id005
89
+ name: bundler
88
90
  prerelease: false
89
91
  type: :development
90
- name: bundler
91
- version_requirements: *id005
92
92
  - !ruby/object:Gem::Dependency
93
93
  requirement: &id006 !ruby/object:Gem::Requirement
94
94
  none: false
@@ -101,10 +101,10 @@ dependencies:
101
101
  - 8
102
102
  - 4
103
103
  version: 1.8.4
104
+ version_requirements: *id006
105
+ name: jeweler
104
106
  prerelease: false
105
107
  type: :development
106
- name: jeweler
107
- version_requirements: *id006
108
108
  - !ruby/object:Gem::Dependency
109
109
  requirement: &id007 !ruby/object:Gem::Requirement
110
110
  none: false
@@ -115,10 +115,10 @@ dependencies:
115
115
  segments:
116
116
  - 0
117
117
  version: "0"
118
+ version_requirements: *id007
119
+ name: rcov
118
120
  prerelease: false
119
121
  type: :development
120
- name: rcov
121
- version_requirements: *id007
122
122
  description: API wrapper for GETI, an ACH provider
123
123
  email: jamie@tracefunc.com
124
124
  executables: []
@@ -142,6 +142,7 @@ files:
142
142
  - doc/.DS_Store
143
143
  - doc/implementation_notes.md
144
144
  - doc/readme.txt
145
+ - geti.gemspec
145
146
  - lib/geti.rb
146
147
  - lib/geti/app_client.rb
147
148
  - lib/geti/auth_client.rb