craftyclicks-ruby 1.0.1 → 1.0.2

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
- SHA1:
3
- metadata.gz: ec2ce4604a95f60db9d88c5f381f7b623a7be524
4
- data.tar.gz: 07b9b461689ab15ebe5938580db6f6af47034d0e
2
+ SHA256:
3
+ metadata.gz: 10c88caf348be280674690b56b0443619a61828ab3a5f34c3a6367d34a12b54e
4
+ data.tar.gz: f413e9cb7a0daaf4c9c83a35cba56f087c5f9ff1c2fc45e05fd36415ebc141d2
5
5
  SHA512:
6
- metadata.gz: 27fe347df999a209a7239364d200096a31ba0883e74593d80fad7d27ed55a0b6b02de899c66df0f6d58370e3818e74b60f463a5ff9e376eb7a6d9e2ba7b0728c
7
- data.tar.gz: d79b0779881abd08f7efd69c811a73dace3b9f1e092701d740aa9c02cbcba4101c34f0932b9a4424dfcb4eefd7692cb329c0dcff007207102f63e5f1b3c8e039
6
+ metadata.gz: e7b1dddc37b1619fbe496a29a3859bcfaecc04e09d84302d2c2bef22c3c50d62270776921c73c76b5a04fd92803916a3d045e8a538a459528ab34509c2a868bb
7
+ data.tar.gz: 2757ee46101a37008e005f922765d9e0f1df79c92f62284a5dac8062122d5eb9b8607a51b45cbb8e8ea5f0b2f4194b98820cb8f0bfac02cba0d1370e61b21b51
data/.rubocop.yml CHANGED
@@ -1,164 +1,12 @@
1
- # Relaxed.Ruby.Style
2
- ## Version 2.0
1
+ inherit_gem:
2
+ relaxed-rubocop: .rubocop.yml
3
3
 
4
- Style/Alias:
5
- Enabled: false
6
- StyleGuide: http://relaxed.ruby.style/#stylealias
7
-
8
- Style/AsciiComments:
9
- Enabled: false
10
- StyleGuide: http://relaxed.ruby.style/#styleasciicomments
11
-
12
- Style/BeginBlock:
13
- Enabled: false
14
- StyleGuide: http://relaxed.ruby.style/#stylebeginblock
15
-
16
- Style/BlockDelimiters:
17
- Enabled: false
18
- StyleGuide: http://relaxed.ruby.style/#styleblockdelimiters
19
-
20
- Style/CommentAnnotation:
21
- Enabled: false
22
- StyleGuide: http://relaxed.ruby.style/#stylecommentannotation
23
-
24
- Style/Documentation:
25
- Enabled: false
26
- StyleGuide: http://relaxed.ruby.style/#styledocumentation
27
-
28
- Style/DotPosition:
29
- Enabled: false
30
- StyleGuide: http://relaxed.ruby.style/#styledotposition
31
-
32
- Style/DoubleNegation:
33
- Enabled: false
34
- StyleGuide: http://relaxed.ruby.style/#styledoublenegation
35
-
36
- Style/EndBlock:
37
- Enabled: false
38
- StyleGuide: http://relaxed.ruby.style/#styleendblock
39
-
40
- Style/FormatString:
41
- Enabled: false
42
- StyleGuide: http://relaxed.ruby.style/#styleformatstring
43
-
44
- Style/IfUnlessModifier:
45
- Enabled: false
46
- StyleGuide: http://relaxed.ruby.style/#styleifunlessmodifier
47
-
48
- Style/Lambda:
49
- Enabled: false
50
- StyleGuide: http://relaxed.ruby.style/#stylelambda
51
-
52
- Style/ModuleFunction:
53
- Enabled: false
54
- StyleGuide: http://relaxed.ruby.style/#stylemodulefunction
55
-
56
- Style/MultilineBlockChain:
57
- Enabled: false
58
- StyleGuide: http://relaxed.ruby.style/#stylemultilineblockchain
59
-
60
- Style/NegatedIf:
61
- Enabled: false
62
- StyleGuide: http://relaxed.ruby.style/#stylenegatedif
63
-
64
- Style/NegatedWhile:
65
- Enabled: false
66
- StyleGuide: http://relaxed.ruby.style/#stylenegatedwhile
67
-
68
- Style/ParallelAssignment:
69
- Enabled: false
70
- StyleGuide: http://relaxed.ruby.style/#styleparallelassignment
71
-
72
- Style/PercentLiteralDelimiters:
73
- Enabled: false
74
- StyleGuide: http://relaxed.ruby.style/#stylepercentliteraldelimiters
75
-
76
- Style/PerlBackrefs:
77
- Enabled: false
78
- StyleGuide: http://relaxed.ruby.style/#styleperlbackrefs
79
-
80
- Style/Semicolon:
81
- Enabled: false
82
- StyleGuide: http://relaxed.ruby.style/#stylesemicolon
83
-
84
- Style/SignalException:
85
- Enabled: false
86
- StyleGuide: http://relaxed.ruby.style/#stylesignalexception
87
-
88
- Style/SingleLineBlockParams:
89
- Enabled: false
90
- StyleGuide: http://relaxed.ruby.style/#stylesinglelineblockparams
91
-
92
- Style/SingleLineMethods:
93
- Enabled: false
94
- StyleGuide: http://relaxed.ruby.style/#stylesinglelinemethods
95
-
96
- Style/SpaceBeforeBlockBraces:
97
- Enabled: false
98
- StyleGuide: http://relaxed.ruby.style/#stylespacebeforeblockbraces
99
-
100
- Style/SpaceInsideParens:
101
- Enabled: false
102
- StyleGuide: http://relaxed.ruby.style/#stylespaceinsideparens
103
-
104
- Style/SpecialGlobalVars:
105
- Enabled: false
106
- StyleGuide: http://relaxed.ruby.style/#stylespecialglobalvars
107
-
108
- Style/StringLiterals:
109
- Enabled: false
110
- StyleGuide: http://relaxed.ruby.style/#stylestringliterals
111
-
112
- Style/TrailingCommaInArguments:
113
- Enabled: false
114
- StyleGuide: http://relaxed.ruby.style/#styletrailingcommainarguments
115
-
116
- Style/TrailingCommaInLiteral:
117
- Enabled: false
118
- StyleGuide: http://relaxed.ruby.style/#styletrailingcommainliteral
119
-
120
- Style/WhileUntilModifier:
121
- Enabled: false
122
- StyleGuide: http://relaxed.ruby.style/#stylewhileuntilmodifier
123
-
124
- Style/WordArray:
125
- Enabled: false
126
- StyleGuide: http://relaxed.ruby.style/#stylewordarray
127
-
128
- Lint/AmbiguousRegexpLiteral:
129
- Enabled: false
130
- StyleGuide: http://relaxed.ruby.style/#lintambiguousregexpliteral
131
-
132
- Lint/AssignmentInCondition:
133
- Enabled: false
134
- StyleGuide: http://relaxed.ruby.style/#lintassignmentincondition
135
-
136
- Metrics/AbcSize:
137
- Enabled: false
138
-
139
- Metrics/BlockNesting:
140
- Enabled: false
141
-
142
- Metrics/ClassLength:
143
- Enabled: false
144
-
145
- Metrics/ModuleLength:
146
- Enabled: false
147
-
148
- Metrics/CyclomaticComplexity:
149
- Enabled: false
150
-
151
- Metrics/LineLength:
152
- Enabled: false
4
+ AllCops:
5
+ TargetRubyVersion: 2.4
153
6
 
154
7
  Metrics/BlockLength:
155
- Enabled: false
156
-
157
- Metrics/MethodLength:
158
- Enabled: false
159
-
160
- Metrics/ParameterLists:
161
- Enabled: false
162
-
163
- Metrics/PerceivedComplexity:
164
- Enabled: false
8
+ Exclude:
9
+ - 'Rakefile'
10
+ - '**/*.rake'
11
+ - 'spec/**/*.rb'
12
+ - '*.gemspec'
data/.travis.yml CHANGED
@@ -1,10 +1,10 @@
1
1
  sudo: false
2
2
  language: ruby
3
3
  rvm:
4
- - 2.1.10
5
- - 2.2.9
6
- - 2.3.6
7
- - 2.4.3
4
+ - 2.4.6
5
+ - 2.5.5
6
+ - 2.6.3
7
+ - 2.7.0-preview1
8
8
 
9
9
  cache: bundler
10
10
 
@@ -13,7 +13,9 @@ before_script:
13
13
  - chmod +x ./cc-test-reporter
14
14
  - ./cc-test-reporter before-build
15
15
 
16
- before_install: gem update
16
+ before_install:
17
+ - gem update --system
18
+ - gem install bundler
17
19
 
18
20
  script: bundle exec rspec
19
21
 
data/Gemfile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  source 'https://rubygems.org'
2
4
 
3
5
  # Specify your gem's dependencies in craftyclicks.gemspec
data/Rakefile CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'bundler/gem_tasks'
2
4
  require 'rspec/core/rake_task'
3
5
 
data/bin/console CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env ruby
2
+ # frozen_string_literal: true
2
3
 
3
4
  require 'bundler/setup'
4
5
  require 'crafty_clicks'
@@ -1,4 +1,6 @@
1
- lib = File.expand_path('../lib', __FILE__)
1
+ # frozen_string_literal: true
2
+
3
+ lib = File.expand_path('lib', __dir__)
2
4
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
3
5
  require 'crafty_clicks/version'
4
6
 
@@ -11,7 +13,7 @@ Gem::Specification.new do |spec|
11
13
  spec.summary = 'A simple wrapper around the CraftClicks API'
12
14
  spec.homepage = 'https://www.github.com/JoeSouthan/craftyclicks-ruby'
13
15
  spec.license = 'MIT'
14
- spec.required_ruby_version = '>= 2.1'
16
+ spec.required_ruby_version = '>= 2.4'
15
17
 
16
18
  spec.metadata['allowed_push_host'] = 'https://rubygems.org'
17
19
 
@@ -22,15 +24,16 @@ Gem::Specification.new do |spec|
22
24
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
23
25
  spec.require_paths = ['lib']
24
26
 
25
- spec.add_development_dependency 'bundler', '~> 1.14'
27
+ spec.add_development_dependency 'bundler'
26
28
  spec.add_development_dependency 'fuubar', '~> 2.2'
27
29
  spec.add_development_dependency 'pry', '~> 0.10'
28
- spec.add_development_dependency 'rake', '~> 12.3'
29
- spec.add_development_dependency 'rspec', '~> 3.0'
30
- spec.add_development_dependency 'rubocop', '~> 0.52'
30
+ spec.add_development_dependency 'rake', '~> 12'
31
+ spec.add_development_dependency 'relaxed-rubocop'
32
+ spec.add_development_dependency 'rspec', '~> 3'
33
+ spec.add_development_dependency 'rubocop', '~> 0.71'
31
34
  spec.add_development_dependency 'simplecov', '~> 0.15'
32
35
  spec.add_development_dependency 'vcr', '~> 4'
33
- spec.add_development_dependency 'webmock', '~> 3.1'
34
- spec.add_dependency 'oj', '~> 3.3'
36
+ spec.add_development_dependency 'webmock', '~> 3.5'
37
+ spec.add_dependency 'oj', '~> 3.7'
35
38
  spec.add_dependency 'rest-client', '>= 1.8', '< 3.0'
36
39
  end
data/lib/crafty_clicks.rb CHANGED
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'crafty_clicks/address_lookup'
2
4
  require 'crafty_clicks/api_base'
3
5
  require 'crafty_clicks/api_base/exceptions'
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CraftyClicks
2
4
  class AddressLookup
3
5
  def self.find(query:, country:, id: nil, ip_address: nil, coords: [])
@@ -1,11 +1,13 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require 'rest-client'
2
4
  require 'oj'
3
5
 
4
6
  module CraftyClicks
5
7
  class ApiBase
6
8
  attr_accessor :result
7
- ADDRESS_ENDPOINT = 'https://api.craftyclicks.co.uk/address/1.1'.freeze
8
- POSTCODE_ENDPOINT = 'http://pcls1.craftyclicks.co.uk/json'.freeze
9
+ ADDRESS_ENDPOINT = 'https://api.craftyclicks.co.uk/address/1.1'
10
+ POSTCODE_ENDPOINT = 'http://pcls1.craftyclicks.co.uk/json'
9
11
 
10
12
  def initialize(product:, service:, params: {}, http_method: :get)
11
13
  @product = self.class.const_get("#{product.upcase}_ENDPOINT")
@@ -23,10 +25,10 @@ module CraftyClicks
23
25
  headers: { content_type: :json, accept: :json }
24
26
  )
25
27
  )
26
- rescue RestClient::Unauthorized, RestClient::Forbidden, RestClient::ResourceNotFound => ex
27
- raise Exceptions::ApiError.new(ex.response), "Unauthorized: #{ex.response}"
28
- rescue RestClient::InternalServerError => ex
29
- raise Exceptions::ApiError.new(ex.response), "Server error: #{ex.response}"
28
+ rescue RestClient::Unauthorized, RestClient::Forbidden, RestClient::ResourceNotFound => e
29
+ raise Exceptions::ApiError.new(e.response), "Unauthorized: #{e.response}"
30
+ rescue RestClient::InternalServerError => e
31
+ raise Exceptions::ApiError.new(e.response), "Server error: #{e.response}"
30
32
  end
31
33
 
32
34
  private
@@ -35,6 +37,7 @@ module CraftyClicks
35
37
  @result = Oj.safe_load(request)
36
38
  @result = @result.is_a?(Array) ? { 'results' => @result } : @result
37
39
  raise Exceptions::ApiError.new(result), "API Error: #{result}" if @result.keys.map { |k| k =~ /error/ }.any?
40
+
38
41
  @result
39
42
  end
40
43
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CraftyClicks
2
4
  class ApiBase
3
5
  class Exceptions
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CraftyClicks
2
4
  class Configuration
3
5
  attr_accessor :api_key
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CraftyClicks
2
4
  class PostcodeLookup
3
5
  attr_accessor :postcode, :geocode, :sort, :response_format, :lines
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module CraftyClicks
2
- VERSION = '1.0.1'.freeze
4
+ VERSION = '1.0.2'
3
5
  end
metadata CHANGED
@@ -1,29 +1,29 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: craftyclicks-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.1
4
+ version: 1.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Joseph Southan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-12-19 00:00:00.000000000 Z
11
+ date: 2019-06-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.14'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.14'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: fuubar
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -58,42 +58,56 @@ dependencies:
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '12.3'
61
+ version: '12'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '12.3'
68
+ version: '12'
69
+ - !ruby/object:Gem::Dependency
70
+ name: relaxed-rubocop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
69
83
  - !ruby/object:Gem::Dependency
70
84
  name: rspec
71
85
  requirement: !ruby/object:Gem::Requirement
72
86
  requirements:
73
87
  - - "~>"
74
88
  - !ruby/object:Gem::Version
75
- version: '3.0'
89
+ version: '3'
76
90
  type: :development
77
91
  prerelease: false
78
92
  version_requirements: !ruby/object:Gem::Requirement
79
93
  requirements:
80
94
  - - "~>"
81
95
  - !ruby/object:Gem::Version
82
- version: '3.0'
96
+ version: '3'
83
97
  - !ruby/object:Gem::Dependency
84
98
  name: rubocop
85
99
  requirement: !ruby/object:Gem::Requirement
86
100
  requirements:
87
101
  - - "~>"
88
102
  - !ruby/object:Gem::Version
89
- version: '0.52'
103
+ version: '0.71'
90
104
  type: :development
91
105
  prerelease: false
92
106
  version_requirements: !ruby/object:Gem::Requirement
93
107
  requirements:
94
108
  - - "~>"
95
109
  - !ruby/object:Gem::Version
96
- version: '0.52'
110
+ version: '0.71'
97
111
  - !ruby/object:Gem::Dependency
98
112
  name: simplecov
99
113
  requirement: !ruby/object:Gem::Requirement
@@ -128,28 +142,28 @@ dependencies:
128
142
  requirements:
129
143
  - - "~>"
130
144
  - !ruby/object:Gem::Version
131
- version: '3.1'
145
+ version: '3.5'
132
146
  type: :development
133
147
  prerelease: false
134
148
  version_requirements: !ruby/object:Gem::Requirement
135
149
  requirements:
136
150
  - - "~>"
137
151
  - !ruby/object:Gem::Version
138
- version: '3.1'
152
+ version: '3.5'
139
153
  - !ruby/object:Gem::Dependency
140
154
  name: oj
141
155
  requirement: !ruby/object:Gem::Requirement
142
156
  requirements:
143
157
  - - "~>"
144
158
  - !ruby/object:Gem::Version
145
- version: '3.3'
159
+ version: '3.7'
146
160
  type: :runtime
147
161
  prerelease: false
148
162
  version_requirements: !ruby/object:Gem::Requirement
149
163
  requirements:
150
164
  - - "~>"
151
165
  - !ruby/object:Gem::Version
152
- version: '3.3'
166
+ version: '3.7'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: rest-client
155
169
  requirement: !ruby/object:Gem::Requirement
@@ -208,15 +222,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
208
222
  requirements:
209
223
  - - ">="
210
224
  - !ruby/object:Gem::Version
211
- version: '2.1'
225
+ version: '2.4'
212
226
  required_rubygems_version: !ruby/object:Gem::Requirement
213
227
  requirements:
214
228
  - - ">="
215
229
  - !ruby/object:Gem::Version
216
230
  version: '0'
217
231
  requirements: []
218
- rubyforge_project:
219
- rubygems_version: 2.6.14
232
+ rubygems_version: 3.0.3
220
233
  signing_key:
221
234
  specification_version: 4
222
235
  summary: A simple wrapper around the CraftClicks API