geti 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
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