craftyclicks-ruby 1.0.1 → 1.0.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.
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