rack-prx_auth 0.0.2 → 0.0.4
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 +4 -4
- data/lib/rack/prx_auth.rb +2 -2
- data/lib/rack/prx_auth/public_key.rb +4 -4
- data/lib/rack/prx_auth/version.rb +1 -1
- data/rack-prx_auth.gemspec +1 -0
- data/test/rack-prx_auth_test.rb +21 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e7cde70cde8a0092e5b9b103dca645ead406af8b
|
4
|
+
data.tar.gz: 36a0c5162508458ec15e9db7572d1cc1244113fd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 805280d7e1fda15de81c390a9c73d89613cc42843452eeff25481abfec36b6882bc8e8fa58312aba0660d7cf8abecea377127fb8912a359ae74214adc5131b7d
|
7
|
+
data.tar.gz: 5b518e3aecb8e4c9c557c1fb7369a092e0b48f902b6e87a5e56fbd407c68e048ea627dc54572a3700d66cdc636f06b21f20451671f88e5fd1cea3604f7cc4619
|
data/lib/rack/prx_auth.rb
CHANGED
@@ -2,12 +2,12 @@ module Rack
|
|
2
2
|
class PrxAuth
|
3
3
|
class PublicKey
|
4
4
|
EXPIRES_IN = 43200
|
5
|
-
AUTH_URI = URI('https://auth.prx.org/api/v1/certs')
|
6
5
|
|
7
|
-
attr_reader :certificate
|
6
|
+
attr_reader :certificate, :cert_location
|
8
7
|
|
9
|
-
def initialize
|
8
|
+
def initialize(cert_location = nil)
|
10
9
|
@created_at = Time.now
|
10
|
+
@cert_location = URI(cert_location || 'https://auth.prx.org/api/v1/certs')
|
11
11
|
get_key
|
12
12
|
end
|
13
13
|
|
@@ -23,7 +23,7 @@ module Rack
|
|
23
23
|
end
|
24
24
|
|
25
25
|
def get_certificate
|
26
|
-
certs = JSON.parse(Net::HTTP.get(
|
26
|
+
certs = JSON.parse(Net::HTTP.get(@cert_location))
|
27
27
|
cert_string = certs['certificates'].values[0]
|
28
28
|
OpenSSL::X509::Certificate.new(cert_string)
|
29
29
|
end
|
data/rack-prx_auth.gemspec
CHANGED
@@ -22,6 +22,7 @@ Gem::Specification.new do |spec|
|
|
22
22
|
spec.add_development_dependency 'rake', '~> 10.0'
|
23
23
|
spec.add_development_dependency 'guard', '~> 2.6', '>= 2.6.1'
|
24
24
|
spec.add_development_dependency 'guard-minitest', '~> 2.3', '>= 2.3.2'
|
25
|
+
spec.add_development_dependency 'minitest-stub_any_instance'
|
25
26
|
|
26
27
|
spec.add_dependency 'rack', '~> 1.5', '>= 1.5.2'
|
27
28
|
spec.add_dependency 'json', '~> 1.8', '>= 1.8.1'
|
data/test/rack-prx_auth_test.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'minitest/autorun'
|
2
2
|
require 'minitest/spec'
|
3
3
|
require 'minitest/pride'
|
4
|
+
require 'minitest/stub_any_instance'
|
4
5
|
require 'rack/prx_auth'
|
5
6
|
|
6
7
|
describe Rack::PrxAuth do
|
@@ -105,4 +106,24 @@ describe Rack::PrxAuth do
|
|
105
106
|
end
|
106
107
|
end
|
107
108
|
end
|
109
|
+
|
110
|
+
describe 'initialize' do
|
111
|
+
it 'takes a certificate location as an option' do
|
112
|
+
Rack::PrxAuth::PublicKey.stub_any_instance(:get_key, nil) do
|
113
|
+
prxauth = Rack::PrxAuth.new(app, cert_location: 'http://www.prx-auth.org/api/v1/certs')
|
114
|
+
key = prxauth.public_key
|
115
|
+
key.cert_location.host.must_equal 'www.prx-auth.org'
|
116
|
+
key.cert_location.path.must_equal '/api/v1/certs'
|
117
|
+
end
|
118
|
+
end
|
119
|
+
|
120
|
+
it 'uses auth.prx.org if no uri is given' do
|
121
|
+
Rack::PrxAuth::PublicKey.stub_any_instance(:get_key, nil) do
|
122
|
+
prxauth = Rack::PrxAuth.new(app)
|
123
|
+
key = prxauth.public_key
|
124
|
+
key.cert_location.host.must_equal 'auth.prx.org'
|
125
|
+
key.cert_location.path.must_equal '/api/v1/certs'
|
126
|
+
end
|
127
|
+
end
|
128
|
+
end
|
108
129
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rack-prx_auth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Eve Asher
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-11-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -78,6 +78,20 @@ dependencies:
|
|
78
78
|
- - ">="
|
79
79
|
- !ruby/object:Gem::Version
|
80
80
|
version: 2.3.2
|
81
|
+
- !ruby/object:Gem::Dependency
|
82
|
+
name: minitest-stub_any_instance
|
83
|
+
requirement: !ruby/object:Gem::Requirement
|
84
|
+
requirements:
|
85
|
+
- - ">="
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :development
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: !ruby/object:Gem::Requirement
|
91
|
+
requirements:
|
92
|
+
- - ">="
|
93
|
+
- !ruby/object:Gem::Version
|
94
|
+
version: '0'
|
81
95
|
- !ruby/object:Gem::Dependency
|
82
96
|
name: rack
|
83
97
|
requirement: !ruby/object:Gem::Requirement
|