maxmind 0.4.5 → 0.4.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 86e1f00f56877745ccb1a9abb4def3a574ab5e39
4
- data.tar.gz: 6cb391c94e902c903a4231c3760e49e0c1e45fe3
3
+ metadata.gz: 0223f7f1a71376a601edbad80dfd6fe9031a4ec3
4
+ data.tar.gz: 907d96e343272de90ce1bd41cfe703e223978735
5
5
  SHA512:
6
- metadata.gz: fa6c8d0f6338fdf40e435fad867ac08d882bc96cdc547a25f393f59ffdf5359df1a5677c0eea7b53b8e51640b169afd953abbfbefda1264db6d3c301f3496930
7
- data.tar.gz: 1ceffa7a4b3c2bac93c89f36a8912a85e39c2290cda325cc4438b6f3ca0033a1379924e2bbfe630e42c9f80182575cc1998f7a31933db2fbc4225621200c4c94
6
+ metadata.gz: 1d814a2b9c81a9a28b0777da2e4e648ec7cb295a7aa912d2a56503c3ddb61135bacde0ea2f833e8fc7fbe841f9769a0d7f707e6670f031f1a84ea2f0832bce0c
7
+ data.tar.gz: b65d325cfc013068bf024b1a2c2a0b7e3d2bf2f108c319338c5e384d7f0604d7db6d3af3a83a3dde754439fec73a2e6b490db4c10c981239509b266086f103c2
data/.travis.yml CHANGED
@@ -1,6 +1,5 @@
1
1
  language: ruby
2
- rvm:
3
- - '1.8.7'
4
- - '1.9.2'
2
+ rvm:
5
3
  - '1.9.3'
6
-
4
+ - '2.1.3'
5
+ - '2.2.0'
data/README.md CHANGED
@@ -38,11 +38,7 @@ These are the only required fields to acquire a response from MaxMind.
38
38
  require 'maxmind'
39
39
  Maxmind.license_key = 'LICENSE_KEY'
40
40
  request = Maxmind::Request.new(
41
- :client_ip => '24.24.24.24',
42
- :city => 'New York',
43
- :region => 'NY',
44
- :postal => '11434',
45
- :country => 'US'
41
+ :client_ip => '24.24.24.24'
46
42
  )
47
43
 
48
44
  response = request.process!
@@ -164,6 +160,7 @@ Contributors
164
160
  * Thomas Morgan
165
161
  * Tinu Cleatus <tinu.cleatus@me.com>
166
162
  * Don Pflaster <dpflaster@gmail.com>
163
+ * Igor Pstyga
167
164
 
168
165
  Thanks to all :)
169
166
 
@@ -120,14 +120,14 @@ module Maxmind
120
120
  def post(query_params)
121
121
  servers ||= SERVERS.map{|hostname| "https://#{hostname}/app/ccv2r"}
122
122
  url = URI.parse(servers.shift)
123
-
123
+
124
124
  req = Net::HTTP::Post.new(url.path)
125
125
  req.set_form_data(query_params)
126
126
 
127
127
  h = Net::HTTP.new(url.host, url.port)
128
128
  h.use_ssl = true
129
129
  h.verify_mode = OpenSSL::SSL::VERIFY_NONE
130
-
130
+
131
131
  # set some timeouts
132
132
  h.open_timeout = 60 # this blocks forever by default, lets be a bit less crazy.
133
133
  h.read_timeout = self.class.timeout || DefaultTimeout
@@ -147,15 +147,11 @@ module Maxmind
147
147
  Digest::MD5.hexdigest(value.downcase)
148
148
  end
149
149
  end
150
-
150
+
151
151
  protected
152
152
  def validate
153
153
  raise ArgumentError, 'License key is required' unless Maxmind::license_key
154
154
  raise ArgumentError, 'IP address is required' unless client_ip
155
- raise ArgumentError, 'City is required' unless city
156
- raise ArgumentError, 'Region is required' unless region
157
- raise ArgumentError, 'Postal code is required' unless postal
158
- raise ArgumentError, 'Country is required' unless country
159
155
  end
160
156
  end
161
157
  end
@@ -1,3 +1,3 @@
1
1
  module Maxmind
2
- VERSION = '0.4.5'
2
+ VERSION = '0.4.6'
3
3
  end
@@ -14,57 +14,67 @@ describe Maxmind::Request do
14
14
  end
15
15
 
16
16
  it "requires client IP" do
17
- expect { @request.client_ip = nil; @request.send(:validate) }.to raise_exception(ArgumentError)
17
+ expect {
18
+ @request.client_ip = nil; @request.send(:validate)
19
+ }.to raise_exception(ArgumentError)
18
20
  end
19
21
 
20
- it "requires city" do
21
- expect { @request.city = nil; @request.send(:validate) }.to raise_exception(ArgumentError)
22
+ it "doesn't require city" do
23
+ expect {
24
+ @request.city = nil; @request.send(:validate)
25
+ }.not_to raise_error
22
26
  end
23
27
 
24
- it "requires region" do
25
- expect { @request.region = nil; @request.send(:validate) }.to raise_exception(ArgumentError)
28
+ it "doesn't require region" do
29
+ expect {
30
+ @request.region = nil; @request.send(:validate)
31
+ }.not_to raise_error
26
32
  end
27
33
 
28
- it "requires postal" do
29
- expect { @request.postal = nil; @request.send(:validate) }.to raise_exception(ArgumentError)
34
+ it "doesn't require postal" do
35
+ expect {
36
+ @request.postal = nil; @request.send(:validate)
37
+ }.not_to raise_error
30
38
  end
31
39
 
32
- it "requires country" do
33
- expect { @request.country = nil; @request.send(:validate) }.to raise_exception(ArgumentError)
40
+ it "doesn't require country" do
41
+ expect {
42
+ @request.country = nil; @request.send(:validate)
43
+ }.not_to raise_error
34
44
  end
35
45
 
36
46
  it "converts username to MD5" do
37
47
  @request.username = 'testuser'
38
- @request.username.should == '5d9c68c6c50ed3d02a2fcf54f63993b6'
48
+ expect(@request.username).to eq '5d9c68c6c50ed3d02a2fcf54f63993b6'
39
49
  end
40
50
 
41
51
  it "converts password to MD5" do
42
52
  @request.password = 'testpassword'
43
- @request.password.should == 'e16b2ab8d12314bf4efbd6203906ea6c'
53
+ expect(@request.password).to eq 'e16b2ab8d12314bf4efbd6203906ea6c'
44
54
  end
45
55
 
46
56
  it "converts email to MD5" do
47
57
  @request.email = 'test@test.com'
48
- @request.email.should == 'b642b4217b34b1e8d3bd915fc65c4452'
58
+ expect(@request.email).to eq 'b642b4217b34b1e8d3bd915fc65c4452'
49
59
  end
50
60
 
51
61
  it "does not double convert an md5 username" do
52
62
  @request.username = 'b642b4217b34b1e8d3bd915fc65c4452'
53
- @request.username.should == 'b642b4217b34b1e8d3bd915fc65c4452'
63
+ expect(@request.username).to eq 'b642b4217b34b1e8d3bd915fc65c4452'
54
64
  end
55
65
 
56
66
  it "does not double convert an md5 password" do
57
67
  @request.password = 'b642b4217b34b1e8d3bd915fc65c4452'
58
- @request.password.should == 'b642b4217b34b1e8d3bd915fc65c4452'
68
+ expect(@request.password).to eq 'b642b4217b34b1e8d3bd915fc65c4452'
59
69
  end
60
70
 
61
71
  it "does not double convert an md5 email" do
62
72
  @request.email = 'b642b4217b34b1e8d3bd915fc65c4452'
63
- @request.email.should == 'b642b4217b34b1e8d3bd915fc65c4452'
73
+ expect(@request.email).to eq 'b642b4217b34b1e8d3bd915fc65c4452'
64
74
  end
65
75
 
66
76
  it "exposes the query parameters" do
67
- @request.query.should be_a Hash
77
+ expect(@request.query).to be_a Hash
68
78
  end
69
79
 
70
80
  end
@@ -22,59 +22,59 @@ describe Maxmind::Response do
22
22
  end
23
23
 
24
24
  it "exposes its attributes" do
25
- @response.attributes.should be_a Hash
25
+ expect(@response.attributes).to be_a Hash
26
26
  end
27
-
27
+
28
28
  it "exposes the raw response body" do
29
- @response.body.should == @response_body
29
+ expect(@response.body).to eq @response_body
30
30
  end
31
31
 
32
32
  it "exposes the http response code" do
33
- @response.http_code.should == 200
33
+ expect(@response.http_code).to eq 200
34
34
  end
35
35
 
36
36
  it "has a distance" do
37
- @response.distance.should == 329
37
+ expect(@response.distance).to eq 329
38
38
  end
39
39
 
40
40
  it "has a maxmind ID" do
41
- @response.maxmind_id.should == '9VSOSDE2'
41
+ expect(@response.maxmind_id).to eq '9VSOSDE2'
42
42
  end
43
43
 
44
44
  it "has a risk score" do
45
- @response.risk_score.should == 2.0
45
+ expect(@response.risk_score).to eq 2.0
46
46
  end
47
47
 
48
48
  it "has a score" do
49
- @response.score.should == 7.66
49
+ expect(@response.score).to eq 7.66
50
50
  end
51
51
 
52
52
  it "has queries remaining" do
53
- @response.queries_remaining.should == 955
53
+ expect(@response.queries_remaining).to eq 955
54
54
  end
55
55
 
56
56
  it "has an explanation" do
57
- @response.explanation.should be_a String
57
+ expect(@response.explanation).to be_a String
58
58
  end
59
59
 
60
60
  it "has a country match" do
61
- @response.country_match.should_not == nil
61
+ expect(@response.country_match).not_to be_nil
62
62
  end
63
63
 
64
64
  it "has a boolean country match" do
65
- @response.country_match.should_not == "Yes"
66
- @response.country_match.should == true
65
+ expect(@response.country_match).not_to eq "Yes"
66
+ expect(@response.country_match).to be_truthy
67
67
  end
68
68
 
69
69
  it "has a phone in billing location" do
70
- @response.phone_in_billing_location.should == false
70
+ expect(@response.phone_in_billing_location).to be_falsey
71
71
  end
72
72
 
73
73
  it "has a phone in billing location ? method" do
74
- @response.phone_in_billing_location?.should == false
74
+ expect(@response.phone_in_billing_location?).to be_falsey
75
75
  end
76
76
 
77
77
  it "has a high risk email" do
78
- @response.high_risk_email.should == true
78
+ expect(@response.high_risk_email).to be_truthy
79
79
  end
80
80
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: maxmind
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.5
4
+ version: 0.4.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Adam Daniels
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-09-27 00:00:00.000000000 Z
11
+ date: 2015-02-16 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: "A wrapper around MaxMind's minFraud anti-fraud service. \n\nhttp://www.maxmind.com/app/ccv_overview\n"
14
14
  email: adam@mediadrive.ca
@@ -18,8 +18,8 @@ extra_rdoc_files:
18
18
  - LICENSE
19
19
  - README.md
20
20
  files:
21
- - .gitignore
22
- - .travis.yml
21
+ - ".gitignore"
22
+ - ".travis.yml"
23
23
  - Gemfile
24
24
  - Guardfile
25
25
  - LICENSE
@@ -53,17 +53,17 @@ require_paths:
53
53
  - lib
54
54
  required_ruby_version: !ruby/object:Gem::Requirement
55
55
  requirements:
56
- - - '>='
56
+ - - ">="
57
57
  - !ruby/object:Gem::Version
58
58
  version: '0'
59
59
  required_rubygems_version: !ruby/object:Gem::Requirement
60
60
  requirements:
61
- - - '>='
61
+ - - ">="
62
62
  - !ruby/object:Gem::Version
63
63
  version: '0'
64
64
  requirements: []
65
65
  rubyforge_project:
66
- rubygems_version: 2.0.7
66
+ rubygems_version: 2.4.4
67
67
  signing_key:
68
68
  specification_version: 4
69
69
  summary: Wrapper for MaxMind's minFraud service