shutl_resource 0.10.3 → 0.10.4

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,8 +1,10 @@
1
1
  module Shutl::Resource
2
2
  module RestClassMethods
3
3
  def find(args = {}, params = {})
4
+ params = args if @singular_resource
5
+ auth_options = { auth: params.delete(:auth), from: params.delete(:from) }
6
+
4
7
  if @singular_resource
5
- params = args
6
8
  url = singular_member_url params
7
9
  elsif !args.kind_of?(Hash)
8
10
  id = args
@@ -12,10 +14,9 @@ module Shutl::Resource
12
14
  url = member_url args.dup, params
13
15
  end
14
16
 
15
- auth_options = { auth: params.delete(:auth), from: params.delete(:from) }
16
17
  response = get url, headers_with_auth(auth_options)
17
18
 
18
- check_fail response, "Failed to find #{name} with the id #{id}"
19
+ check_fail response, "Failed to find #{name}! args: #{args}, params: #{params}"
19
20
 
20
21
  parsed = response.parsed_response
21
22
 
@@ -1,5 +1,5 @@
1
1
  module Shutl
2
2
  module Resource
3
- VERSION = '0.10.3'
3
+ VERSION = '0.10.4'
4
4
  end
5
5
  end
@@ -50,28 +50,32 @@ describe Shutl::Resource::Rest do
50
50
  end
51
51
 
52
52
  context 'with no arguments' do
53
+ let(:headers_with_auth) do
54
+ headers.merge("Authorization" => "Bearer some auth")
55
+ end
56
+
53
57
  before do
54
58
  @request = stub_request(:get, 'http://host/test_rests/a').
55
59
  to_return(:status => 200,
56
60
  :body => '{"test_rest": { "a": "a", "b": 2 }}',
57
- :headers => headers)
61
+ :headers => headers_with_auth)
58
62
  end
59
63
 
60
64
  it 'should query the endpoint' do
61
- TestRest.find('a')
65
+ TestRest.find('a', auth: "some auth")
62
66
 
63
67
  @request.should have_been_requested
64
68
  end
65
69
 
66
70
  it 'should parse the result of the body to create an object' do
67
- resource = TestRest.find('a')
71
+ resource = TestRest.find('a', auth: "some auth")
68
72
 
69
73
  resource.should_not be_nil
70
74
  resource.should be_kind_of TestRest
71
75
  end
72
76
 
73
77
  it 'should assign the attributes based on the json returned' do
74
- resource = TestRest.find('a')
78
+ resource = TestRest.find('a', auth: "some auth")
75
79
 
76
80
  resource.instance_variable_get('@a').should == 'a'
77
81
  resource.instance_variable_get('@b').should == 2
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shutl_resource
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.3
4
+ version: 0.10.4
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -173,7 +173,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
173
173
  version: '0'
174
174
  segments:
175
175
  - 0
176
- hash: 1105111113104510387
176
+ hash: -2937045685155006965
177
177
  required_rubygems_version: !ruby/object:Gem::Requirement
178
178
  none: false
179
179
  requirements:
@@ -182,7 +182,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
182
182
  version: '0'
183
183
  segments:
184
184
  - 0
185
- hash: 1105111113104510387
185
+ hash: -2937045685155006965
186
186
  requirements: []
187
187
  rubyforge_project:
188
188
  rubygems_version: 1.8.23