strikeiron_address_verification 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.1.0
1
+ 0.1.1
@@ -40,6 +40,7 @@ module STRIKEIRON_ADDRESS_VERIFICATION
40
40
  rescue Exception => e
41
41
  @error = e.message
42
42
  end
43
+ #puts "#{@status.class} #{is_address_valid?} - address: #{@street_address}"
43
44
  end
44
45
 
45
46
  def fire_request
@@ -49,7 +50,7 @@ module STRIKEIRON_ADDRESS_VERIFICATION
49
50
  end
50
51
 
51
52
  def is_address_valid?
52
- @status != 304 && @status != 402
53
+ @status != '304' && @status != '402'
53
54
  end
54
55
 
55
56
  def prepare_payload
@@ -66,24 +67,3 @@ module STRIKEIRON_ADDRESS_VERIFICATION
66
67
  end
67
68
 
68
69
  end
69
-
70
- # == Schema Information
71
- #
72
- # Table name: address_verifications
73
- #
74
- # id :integer not null, primary key
75
- # order_id :integer
76
- # street_address :string(255) default(""), not null
77
- # street_address_2 :string(255) default("")
78
- # city :string(255) default(""), not null
79
- # state :string(255) default(""), not null
80
- # zip_code :string(255) default(""), not null
81
- # is_valid :boolean default(FALSE), not null
82
- # status :integer
83
- # status_msg :string(255)
84
- # error :string(255)
85
- # response :text
86
- # created_at :datetime
87
- # updated_at :datetime
88
- #
89
-
@@ -6,7 +6,7 @@ describe "StrikeironAddressVerification" do
6
6
  STRIKEIRON_ADDRESS_VERIFICATION.configure do |config|
7
7
  config.username = invalid_username
8
8
  config.password = invalid_password
9
- config.url = invalid_url
9
+ config.url = url
10
10
  config.timeout = 1
11
11
  config.open_timeout = 1
12
12
  end
@@ -37,7 +37,7 @@ describe "StrikeironAddressVerification" do
37
37
  it "should initialize" do
38
38
  subject.username.should == invalid_username
39
39
  subject.password.should == invalid_password
40
- subject.url.should == invalid_url
40
+ subject.url.should == url
41
41
  subject.street_address.should == ''
42
42
  subject.street_address_2.should == ''
43
43
  subject.city.should == ''
@@ -54,7 +54,87 @@ describe "StrikeironAddressVerification" do
54
54
  subject.verify address_options
55
55
  subject.is_valid?.should be
56
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
72
+ end
73
+ end
74
+
75
+ let(:username) { ENV['STRIKEIRON_USERID'] }
76
+ let(:password) { ENV['STRIKEIRON_PW'] }
77
+ let(:url) { ENV['STRIKEIRON_ADDRESS_VERIFICATION_URL'] }
78
+ let(:timeout) { ENV['STRIKEIRON_TIMEOUT'] }
79
+ let(:open_timeout) { ENV['STRIKEIRON_OPEN_TIMEOUT'] }
57
80
 
81
+ subject { STRIKEIRON_ADDRESS_VERIFICATION::Address.new }
58
82
 
83
+ let(:address_options){
84
+ {
85
+ :street_address => street_address,
86
+ :street_address_2 => '',
87
+ :city => city,
88
+ :state => 'FL',
89
+ :zip_code => zip
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'
101
+ end
102
+
103
+ end
104
+ describe "Verify a valid address" do
105
+ let(:street_address){ '4701 Coconut Creek Parkway' }
106
+ let(:city){ 'Margate' }
107
+ let(:zip){ '33063' }
108
+
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
+ end
115
+ end
116
+ describe "Verify a invalid address - not found" do
117
+ let(:street_address){ '987 NS 69th ct' }
118
+ let(:city){ 'Pompano Beach' }
119
+ let(:zip){ '33064' }
120
+
121
+ it "should accept a verify request for a invalid address" do
122
+ subject.verify address_options
123
+ subject.is_valid?.should be_false
124
+ subject.status.should == "304"
125
+ subject.status_msg.should == 'Address Not Found'
126
+ end
127
+ end
128
+ describe "Verify a invalid address - City or zip code not found" do
129
+ let(:street_address){ '987 NS 69th ct' }
130
+ let(:zip){ '99999' }
131
+ let(:city){ 'tinbuktwo' }
132
+ it "should accept a verify request for a valid address" do
133
+ subject.verify address_options
134
+ subject.is_valid?.should be_false
135
+ subject.status.should == "402"
136
+ subject.status_msg.should == 'City or ZIP Code is Invalid'
137
+ end
138
+ end
59
139
  end
60
140
  end
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "strikeiron_address_verification"
8
- s.version = "0.1.0"
8
+ s.version = "0.1.1"
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"]
@@ -26,7 +26,6 @@ Gem::Specification.new do |s|
26
26
  "Rakefile",
27
27
  "VERSION",
28
28
  "config/development.example.yaml",
29
- "config/development.yaml",
30
29
  "lib/strikeiron_address_verification.rb",
31
30
  "lib/strikeiron_address_verification/address.rb",
32
31
  "spec/spec_helper.rb",
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.0
4
+ version: 0.1.1
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -13,7 +13,7 @@ date: 2012-06-28 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: activesupport
16
- requirement: &2168751080 !ruby/object:Gem::Requirement
16
+ requirement: &2169633800 !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: *2168751080
24
+ version_requirements: *2169633800
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: crack
27
- requirement: &2168750500 !ruby/object:Gem::Requirement
27
+ requirement: &2169633300 !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: *2168750500
35
+ version_requirements: *2169633300
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rest-client
38
- requirement: &2168749940 !ruby/object:Gem::Requirement
38
+ requirement: &2169632820 !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: *2168749940
46
+ version_requirements: *2169632820
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: rspec
49
- requirement: &2168749420 !ruby/object:Gem::Requirement
49
+ requirement: &2169632320 !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: *2168749420
57
+ version_requirements: *2169632320
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rdoc
60
- requirement: &2168748820 !ruby/object:Gem::Requirement
60
+ requirement: &2169631840 !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: *2168748820
68
+ version_requirements: *2169631840
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: bundler
71
- requirement: &2168748220 !ruby/object:Gem::Requirement
71
+ requirement: &2169631340 !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: *2168748220
79
+ version_requirements: *2169631340
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: jeweler
82
- requirement: &2168747560 !ruby/object:Gem::Requirement
82
+ requirement: &2169630820 !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: *2168747560
90
+ version_requirements: *2169630820
91
91
  description: Strike Iron Address Verification
92
92
  email: jturner@saveology.com
93
93
  executables: []
@@ -105,7 +105,6 @@ files:
105
105
  - Rakefile
106
106
  - VERSION
107
107
  - config/development.example.yaml
108
- - config/development.yaml
109
108
  - lib/strikeiron_address_verification.rb
110
109
  - lib/strikeiron_address_verification/address.rb
111
110
  - spec/spec_helper.rb
@@ -127,7 +126,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
127
126
  version: '0'
128
127
  segments:
129
128
  - 0
130
- hash: -3924847419987601698
129
+ hash: -688267750604785176
131
130
  required_rubygems_version: !ruby/object:Gem::Requirement
132
131
  none: false
133
132
  requirements:
@@ -1,7 +0,0 @@
1
- STRIKEIRON_ADDRESS_VERIFICATION_ON: 'true'
2
- STRIKEIRON_ADDRESS_VERIFICATION_URL: 'http://ws.strikeiron.com/NAAddressVerification6/NorthAmericanAddressVerificationService/NorthAmericanAddressVerification'
3
- STRIKEIRON_USERID: 'fkaram@elephantgroup.com'
4
- STRIKEIRON_PW: 'ssellsat1i'
5
- STRIKEIRON_TIMEOUT: '3'
6
- STRIKEIRON_OPEN_TIMEOUT: '1'
7
-