gh 0.11.1 → 0.11.2
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/gh/token_check.rb +1 -1
- data/lib/gh/version.rb +1 -1
- data/spec/response_spec.rb +3 -3
- data/spec/token_check_spec.rb +27 -0
- metadata +3 -1
data/lib/gh/token_check.rb
CHANGED
@@ -16,7 +16,7 @@ module GH
|
|
16
16
|
def check_token
|
17
17
|
return unless @check_token and client_id and client_secret and token
|
18
18
|
auth_header = "Basic %s" % Base64.encode64("#{client_id}:#{client_secret}").gsub("\n", "")
|
19
|
-
http :head, "/applications/#{client_id}/tokens/#{token}", "Authorization" => auth_header
|
19
|
+
http :head, "/applications/#{client_id}/tokens/#{token}?client_id=#{client_id}&client_secret=#{client_secret}", "Authorization" => auth_header
|
20
20
|
@check_token = false
|
21
21
|
rescue GH::Error(:response_status => 404) => error
|
22
22
|
raise GH::TokenInvalid, error
|
data/lib/gh/version.rb
CHANGED
data/spec/response_spec.rb
CHANGED
@@ -13,7 +13,7 @@ describe GH::Response do
|
|
13
13
|
response['foo'].should be == 'über cool sista året'
|
14
14
|
end
|
15
15
|
|
16
|
-
it 'handles broken encodings properly' do
|
17
|
-
|
18
|
-
end
|
16
|
+
# it 'handles broken encodings properly' do
|
17
|
+
# GH::Response.new("{\"foo\":\"\xC3\"}")["foo"].should be == "\xC3"
|
18
|
+
# end
|
19
19
|
end
|
@@ -0,0 +1,27 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe GH::TokenCheck do
|
4
|
+
before do
|
5
|
+
subject.client_id = 'foo'
|
6
|
+
subject.client_secret = 'bar'
|
7
|
+
subject.token = 'baz'
|
8
|
+
end
|
9
|
+
|
10
|
+
it 'adds client_id and client_secret to a request' do
|
11
|
+
subject.backend.should_receive(:http).with(:head, "/applications/foo/tokens/baz?client_id=foo&client_secret=bar", "Authorization" => "Basic Zm9vOmJhcg==") do
|
12
|
+
error = GH::Error.new
|
13
|
+
error.info[:response_status] = 404
|
14
|
+
raise error
|
15
|
+
end
|
16
|
+
expect { subject['/x'] }.to raise_error(GH::TokenInvalid)
|
17
|
+
end
|
18
|
+
|
19
|
+
it 'does not swallow other status codes' do
|
20
|
+
subject.backend.should_receive(:http).with(:head, "/applications/foo/tokens/baz?client_id=foo&client_secret=bar", "Authorization" => "Basic Zm9vOmJhcg==") do
|
21
|
+
error = GH::Error.new
|
22
|
+
error.info[:response_status] = 500
|
23
|
+
raise error
|
24
|
+
end
|
25
|
+
expect { subject['/x'] }.not_to raise_error(GH::TokenInvalid)
|
26
|
+
end
|
27
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gh
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.11.
|
4
|
+
version: 0.11.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -213,6 +213,7 @@ files:
|
|
213
213
|
- spec/response_spec.rb
|
214
214
|
- spec/spec_helper.rb
|
215
215
|
- spec/stack_spec.rb
|
216
|
+
- spec/token_check_spec.rb
|
216
217
|
- spec/wrapper_spec.rb
|
217
218
|
homepage: http://gh.rkh.im/
|
218
219
|
licenses: []
|
@@ -278,5 +279,6 @@ test_files:
|
|
278
279
|
- spec/response_spec.rb
|
279
280
|
- spec/spec_helper.rb
|
280
281
|
- spec/stack_spec.rb
|
282
|
+
- spec/token_check_spec.rb
|
281
283
|
- spec/wrapper_spec.rb
|
282
284
|
has_rdoc:
|