restful_resource 0.8.29 → 0.8.30

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: e1200df2ffe234dcae828f3463568f0958041047
4
- data.tar.gz: ecba1c50b0cd518e23b446e804d6431161f3f17e
3
+ metadata.gz: dafad3983beafc514d01f30c74e2fe97095219d9
4
+ data.tar.gz: 9ba218ee514a73b4ba75447928b19a3fb7dfb030
5
5
  SHA512:
6
- metadata.gz: 44f87745629a441306ece3cadd634d30ff33fbc034407f99f0e4097d6c7640484c6df533e636983276d63b133303ad56c93bfc512e7a2376c957e7a3eb42713d
7
- data.tar.gz: a1a6c039ab088c5310c40c5ab59e3dcbfcb639b0627b659b4b9ef3f02a0f26ced3fd3f8f55e202b2c9e5c1152aba28120f36277d343aff5ef881b27b352965f0
6
+ metadata.gz: eef8abc3f5eb592f611a33ac2880fa061b09eaabf895ce0dd583c8f4d6135ca85425ca7fea67db4274fb538cc16bbd48319514f94f2a680517c37477cc1f6a29
7
+ data.tar.gz: 958bbb693ef40b49ad0c8f8267516b3348862d0294d2f6ef91632c6599b2e1383ee3aa6e925a5cb4a7de7d843de0ead2b9bf840535ecf66248977501f5d64e97
@@ -2,9 +2,11 @@ module RestfulResource
2
2
  class Base < OpenObject
3
3
  extend RestfulResource::Associations
4
4
 
5
- def self.configure(base_url: nil, username: nil, password: nil)
5
+ def self.configure(base_url: nil, username: nil, password: nil, logger: NullLogger.new)
6
6
  @base_url = URI.parse(base_url)
7
7
 
8
+ RestClient.log = logger
9
+
8
10
  auth = nil
9
11
 
10
12
  if (username.present? && password.present?)
@@ -24,7 +26,8 @@ module RestfulResource
24
26
  end
25
27
 
26
28
  def self.where(params={})
27
- response = http.get(collection_url(params))
29
+ url = collection_url(params)
30
+ response = http.get(url)
28
31
  self.paginate_response(response)
29
32
  end
30
33
 
@@ -40,7 +43,6 @@ module RestfulResource
40
43
 
41
44
  def self.put(id, data: {}, **params)
42
45
  url = member_url(id, params)
43
-
44
46
  response = http.put(url, data: data)
45
47
  self.new(parse_json(response.body))
46
48
  end
@@ -0,0 +1,6 @@
1
+ module RestfulResource
2
+ class NullLogger
3
+ def <<(*args)
4
+ end
5
+ end
6
+ end
@@ -1,3 +1,3 @@
1
1
  module RestfulResource
2
- VERSION = "0.8.29"
2
+ VERSION = "0.8.30"
3
3
  end
@@ -5,6 +5,7 @@ require 'restclient'
5
5
  require 'active_support'
6
6
  require 'active_support/all'
7
7
  require_relative "restful_resource/version"
8
+ require_relative 'restful_resource/null_logger'
8
9
  require_relative "restful_resource/paginated_array"
9
10
  require_relative "restful_resource/parameter_missing_error"
10
11
  require_relative "restful_resource/resource_id_missing_error"
@@ -223,6 +223,34 @@ describe RestfulResource::Base do
223
223
  end
224
224
  end
225
225
 
226
+ describe 'logger' do
227
+ before do
228
+ RestfulResource::Base.configure(base_url: 'http://api.carwow.co.uk/')
229
+ end
230
+
231
+ context 'when no logger is passed' do
232
+ it 'defaults to NullLogger' do
233
+ expect(RestClient.log).to be_instance_of(RestfulResource::NullLogger)
234
+ end
235
+ end
236
+
237
+ context 'when a logger is passed' do
238
+ before do
239
+ RestfulResource::Base.configure(base_url: 'http://api.carwow.co.uk/', logger: my_logger)
240
+ end
241
+
242
+ after do
243
+ RestClient.log = RestfulResource::NullLogger.new
244
+ end
245
+
246
+ let(:my_logger) { double('logger') }
247
+
248
+ it 'uses that logger' do
249
+ expect(RestClient.log).to eq(my_logger)
250
+ end
251
+ end
252
+ end
253
+
226
254
  def response_with_page_information
227
255
  RestfulResource::Response.new(body: [{ id: 1, name: 'Golf'}, { id: 2, name: 'Polo' }].to_json,
228
256
  headers: { links: '<http://api.carwow.co.uk/makes/Volkswagen/models.json?page=6>;rel="last",<http://api.carwow.co.uk/makes/Volkswagen/models.json?page=2>;rel="next"'})
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: restful_resource
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.29
4
+ version: 0.8.30
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Santoro
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-03-12 00:00:00.000000000 Z
12
+ date: 2015-09-21 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: bundler
@@ -127,6 +127,7 @@ files:
127
127
  - lib/restful_resource/authorization.rb
128
128
  - lib/restful_resource/base.rb
129
129
  - lib/restful_resource/http_client.rb
130
+ - lib/restful_resource/null_logger.rb
130
131
  - lib/restful_resource/old_base.rb
131
132
  - lib/restful_resource/open_object.rb
132
133
  - lib/restful_resource/paginated_array.rb