strikeiron_address_verification 0.1.1 → 0.1.2
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/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.2
|
@@ -16,6 +16,7 @@ module STRIKEIRON_ADDRESS_VERIFICATION
|
|
16
16
|
end
|
17
17
|
|
18
18
|
def verify(args)
|
19
|
+
# puts "#{@username} - #{@password} - #{@url} - #{@timeout} - #{@open_timeout}"
|
19
20
|
@street_address = args[:street_address] if args[:street_address]
|
20
21
|
@street_address_2 = args[:street_address_2] if args[:street_address_2]
|
21
22
|
@city = args[:city] if args[:city]
|
@@ -1,28 +1,31 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
|
2
2
|
|
3
|
-
describe
|
4
|
-
describe
|
3
|
+
describe 'StrikeironAddressVerification' do
|
4
|
+
describe 'Address' do
|
5
5
|
before do
|
6
6
|
STRIKEIRON_ADDRESS_VERIFICATION.configure do |config|
|
7
|
-
config.username =
|
8
|
-
config.password =
|
7
|
+
config.username = username
|
8
|
+
config.password = password
|
9
9
|
config.url = url
|
10
|
-
config.timeout =
|
11
|
-
config.open_timeout =
|
10
|
+
config.timeout = timeout.to_i
|
11
|
+
config.open_timeout = open_timeout.to_i
|
12
12
|
end
|
13
13
|
end
|
14
|
+
subject { STRIKEIRON_ADDRESS_VERIFICATION::Address.new }
|
14
15
|
|
15
|
-
let(:
|
16
|
-
let(:
|
17
|
-
let(:
|
18
|
-
let(:
|
19
|
-
let(:
|
16
|
+
let(:valid_username) { ENV['STRIKEIRON_USERID'] }
|
17
|
+
let(:valid_password) { ENV['STRIKEIRON_PW'] }
|
18
|
+
let(:valid_url) { ENV['STRIKEIRON_ADDRESS_VERIFICATION_URL'] }
|
19
|
+
let(:valid_timeout) { ENV['STRIKEIRON_TIMEOUT'] }
|
20
|
+
let(:valid_open_timeout) { ENV['STRIKEIRON_OPEN_TIMEOUT'] }
|
20
21
|
|
21
|
-
let(:invalid_username) {
|
22
|
-
let(:invalid_password) {
|
23
|
-
let(:invalid_url) {
|
22
|
+
let(:invalid_username) { 'testusername' }
|
23
|
+
let(:invalid_password) { 'testpassword' }
|
24
|
+
let(:invalid_url) { 'http://www.invalidurl.com/' }
|
25
|
+
let(:invalid_timeout) {0}
|
26
|
+
let(:invalid_open_timeout) {0}
|
24
27
|
|
25
|
-
let(:
|
28
|
+
let(:valid_address_options){
|
26
29
|
{
|
27
30
|
:street_address => '4701 Coconut Creek Parkway',
|
28
31
|
:street_address_2 => '',
|
@@ -31,110 +34,117 @@ describe "StrikeironAddressVerification" do
|
|
31
34
|
:zip_code => '33063'
|
32
35
|
}
|
33
36
|
}
|
37
|
+
let(:not_found_address_options){
|
38
|
+
{
|
39
|
+
:street_address => '987 NS 69th ct',
|
40
|
+
:street_address_2 => '',
|
41
|
+
:city => 'Pompano Beach',
|
42
|
+
:state => 'FL',
|
43
|
+
:zip_code => '33064'
|
44
|
+
}
|
45
|
+
}
|
46
|
+
let(:city_zip_not_found_address_options){
|
47
|
+
{
|
48
|
+
:street_address => '987 NS 69th ct',
|
49
|
+
:street_address_2 => '',
|
50
|
+
:city => 'not a city',
|
51
|
+
:state => 'FL',
|
52
|
+
:zip_code => '99999'
|
53
|
+
}
|
54
|
+
}
|
34
55
|
|
35
|
-
|
56
|
+
context 'Initialize' do
|
57
|
+
let(:username) { invalid_username }
|
58
|
+
let(:password) { invalid_password }
|
59
|
+
let(:url) { valid_url }
|
60
|
+
let(:timeout) { valid_timeout }
|
61
|
+
let(:open_timeout) { valid_open_timeout }
|
36
62
|
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
63
|
+
it 'should initialize' do
|
64
|
+
subject.username.should == invalid_username
|
65
|
+
subject.password.should == invalid_password
|
66
|
+
subject.url.should == valid_url
|
67
|
+
subject.street_address.should == ''
|
68
|
+
subject.street_address_2.should == ''
|
69
|
+
subject.city.should == ''
|
70
|
+
subject.state.should == ''
|
71
|
+
subject.zip_code.should == ''
|
72
|
+
subject.status.should == ''
|
73
|
+
subject.status_msg.should == ''
|
74
|
+
#subject.error.should == ''
|
75
|
+
subject.request.should == ''
|
76
|
+
subject.response.should == ''
|
77
|
+
end
|
52
78
|
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
end
|
57
|
-
it "invalid username or password should deny access" do
|
58
|
-
subject.verify address_options
|
59
|
-
subject.status.should_not be_kind_of(Integer)
|
60
|
-
subject.response.should == '<WebServiceResponse xmlns="http://ws.strikeiron.com"><Error>Invalid user identification format.</Error></WebServiceResponse>'
|
61
|
-
#subject.is_valid?.should_not be
|
62
|
-
end
|
63
|
-
end
|
64
|
-
describe "Verification with valid config data" do
|
65
|
-
before do
|
66
|
-
STRIKEIRON_ADDRESS_VERIFICATION.configure do |config|
|
67
|
-
config.username = username
|
68
|
-
config.password = password
|
69
|
-
config.url = url
|
70
|
-
config.timeout = timeout.to_i
|
71
|
-
config.open_timeout = open_timeout.to_i
|
79
|
+
it 'should accept a verify request' do
|
80
|
+
subject.verify not_found_address_options
|
81
|
+
subject.is_valid?.should be
|
72
82
|
end
|
73
83
|
end
|
74
84
|
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
85
|
+
context 'Invalid configuration' do
|
86
|
+
let(:username) { valid_username }
|
87
|
+
let(:password) { valid_password }
|
88
|
+
let(:url) { valid_url }
|
89
|
+
let(:timeout) { valid_timeout }
|
90
|
+
let(:open_timeout) { valid_open_timeout }
|
80
91
|
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
}
|
91
|
-
}
|
92
|
-
describe "a timeout" do
|
93
|
-
let(:timeout) {0}
|
94
|
-
let(:open_timeout) {0}
|
95
|
-
let(:street_address){ '4701 Coconut Creek Parkway' }
|
96
|
-
let(:city){ 'Margate' }
|
97
|
-
let(:zip){ '33063' }
|
98
|
-
it "should time out" do
|
99
|
-
subject.verify address_options
|
100
|
-
subject.error.should == 'Request Timeout'
|
92
|
+
describe 'Invalid username password' do
|
93
|
+
let(:username) { invalid_username }
|
94
|
+
let(:password) { invalid_password }
|
95
|
+
it 'invalid username or password should deny access' do
|
96
|
+
subject.verify not_found_address_options
|
97
|
+
subject.status.should_not be_kind_of(Integer)
|
98
|
+
subject.response.should == '<WebServiceResponse xmlns="http://ws.strikeiron.com"><Error>Invalid user identification format.</Error></WebServiceResponse>'
|
99
|
+
#subject.is_valid?.should_not be
|
100
|
+
end
|
101
101
|
end
|
102
102
|
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
103
|
+
describe 'Invalid timeout configuration' do
|
104
|
+
let(:timeout) {0}
|
105
|
+
let(:open_timeout) {0}
|
106
|
+
it 'should time out' do
|
107
|
+
subject.verify valid_address_options
|
108
|
+
subject.error.should == 'Request Timeout'
|
109
|
+
end
|
108
110
|
|
109
|
-
it "should accept a verify request for a valid address and return is_valid" do
|
110
|
-
subject.verify address_options
|
111
|
-
subject.is_valid?.should be
|
112
|
-
subject.status.should == "200"
|
113
|
-
subject.status_msg.should == 'Found'
|
114
111
|
end
|
115
112
|
end
|
116
|
-
|
117
|
-
|
118
|
-
let(:
|
119
|
-
let(:
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
113
|
+
|
114
|
+
context 'Verification with valid config data' do
|
115
|
+
let(:username) { valid_username }
|
116
|
+
let(:password) { valid_password }
|
117
|
+
let(:url) { valid_url }
|
118
|
+
let(:timeout) { valid_timeout }
|
119
|
+
let(:open_timeout) { valid_open_timeout }
|
120
|
+
|
121
|
+
describe 'Verify a valid address' do
|
122
|
+
it 'should accept a verify request for a valid address and return is_valid' do
|
123
|
+
subject.verify valid_address_options
|
124
|
+
subject.is_valid?.should be
|
125
|
+
subject.status.should == '200'
|
126
|
+
subject.status_msg.should == 'Found'
|
127
|
+
end
|
126
128
|
end
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
129
|
+
|
130
|
+
describe 'Verify a invalid address - not found' do
|
131
|
+
it 'should accept a verify request for a invalid address' do
|
132
|
+
subject.verify not_found_address_options
|
133
|
+
subject.is_valid?.should be_false
|
134
|
+
subject.status.should == '304'
|
135
|
+
subject.status_msg.should == 'Address Not Found'
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
139
|
+
describe 'Verify a invalid address - City or zip code not found' do
|
140
|
+
it 'should accept a verify request for a valid address' do
|
141
|
+
subject.verify city_zip_not_found_address_options
|
142
|
+
subject.is_valid?.should be_false
|
143
|
+
subject.status.should == '402'
|
144
|
+
subject.status_msg.should == 'City or ZIP Code is Invalid'
|
145
|
+
end
|
137
146
|
end
|
138
147
|
end
|
148
|
+
|
139
149
|
end
|
140
150
|
end
|
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "strikeiron_address_verification"
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Jon Turner"]
|
12
|
-
s.date = "2012-06-
|
12
|
+
s.date = "2012-06-29"
|
13
13
|
s.description = "Strike Iron Address Verification"
|
14
14
|
s.email = "jturner@saveology.com"
|
15
15
|
s.extra_rdoc_files = [
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: strikeiron_address_verification
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-06-
|
12
|
+
date: 2012-06-29 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activesupport
|
16
|
-
requirement: &
|
16
|
+
requirement: &2168542600 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *2168542600
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: crack
|
27
|
-
requirement: &
|
27
|
+
requirement: &2168542000 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *2168542000
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rest-client
|
38
|
-
requirement: &
|
38
|
+
requirement: &2168541360 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *2168541360
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rspec
|
49
|
-
requirement: &
|
49
|
+
requirement: &2168540880 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 2.8.0
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *2168540880
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: rdoc
|
60
|
-
requirement: &
|
60
|
+
requirement: &2168515560 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '3.12'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *2168515560
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: bundler
|
71
|
-
requirement: &
|
71
|
+
requirement: &2168515060 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ~>
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: 1.0.0
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *2168515060
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: jeweler
|
82
|
-
requirement: &
|
82
|
+
requirement: &2168514580 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ~>
|
@@ -87,7 +87,7 @@ dependencies:
|
|
87
87
|
version: 1.8.4
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *2168514580
|
91
91
|
description: Strike Iron Address Verification
|
92
92
|
email: jturner@saveology.com
|
93
93
|
executables: []
|
@@ -126,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
126
126
|
version: '0'
|
127
127
|
segments:
|
128
128
|
- 0
|
129
|
-
hash:
|
129
|
+
hash: 190175730600019786
|
130
130
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
131
131
|
none: false
|
132
132
|
requirements:
|