maxmind 0.4.5 → 0.4.6

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.
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