omniauth-msunet 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 +4 -4
- data/CHANGELOG.md +5 -1
- data/Gemfile +0 -8
- data/README.md +1 -1
- data/lib/omniauth-msunet/version.rb +1 -1
- data/lib/omniauth/strategies/msunet.rb +2 -3
- data/omniauth-msunet.gemspec +3 -6
- data/spec/omniauth/strategies/msunet_spec.rb +82 -0
- data/spec/spec_helper.rb +2 -0
- metadata +23 -59
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6fd0c7bae1d9ae0c5dfb334385bf172701a29f5b
|
4
|
+
data.tar.gz: b850e88fe74294a8d62e409a74fa0faf5722eea8
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4856f0e5c8eb59e4c097431781a435dac7dff14c73715e699670d342a5c6c92e2de0aff5c86a9aaf80132d14f13cf16dc7632af8bfab0da42178609567d150c6
|
7
|
+
data.tar.gz: c1a048f6e1ddfdf68b6a28292d60d217a87ffe61fe1a16c5ba0bbeb1dee3b2d65869409b27066add5637aca81dd5532f9def42d8f4d09c1fe9b866937966d038
|
data/CHANGELOG.md
CHANGED
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -6,7 +6,6 @@ module OmniAuth
|
|
6
6
|
class MSUnet < OmniAuth::Strategies::OAuth2
|
7
7
|
option :client_options, {
|
8
8
|
site: "https://oauth.ais.msu.edu",
|
9
|
-
authorize_path: "/oauth/authorize",
|
10
9
|
authorize_url: "/oauth/authorize",
|
11
10
|
token_url: "/oauth/token"
|
12
11
|
}
|
@@ -26,7 +25,7 @@ module OmniAuth
|
|
26
25
|
end
|
27
26
|
|
28
27
|
extra do
|
29
|
-
{ :
|
28
|
+
{ raw_info: raw_info }
|
30
29
|
end
|
31
30
|
|
32
31
|
def raw_info
|
@@ -37,4 +36,4 @@ module OmniAuth
|
|
37
36
|
end
|
38
37
|
end
|
39
38
|
|
40
|
-
OmniAuth.config.add_camelization 'msunet', 'MSUnet'
|
39
|
+
OmniAuth.config.add_camelization 'msunet', 'MSUnet'
|
data/omniauth-msunet.gemspec
CHANGED
@@ -2,8 +2,8 @@
|
|
2
2
|
require File.expand_path('../lib/omniauth-msunet/version', __FILE__)
|
3
3
|
|
4
4
|
Gem::Specification.new do |gem|
|
5
|
-
gem.authors = [
|
6
|
-
gem.email = [
|
5
|
+
gem.authors = ['Troy Murray', 'Andrew Tomaka']
|
6
|
+
gem.email = ['tm@msu.edu', 'atomaka@msu.edu']
|
7
7
|
gem.summary = %q{Michigan State University MSUnet OmniAuth strategy.}
|
8
8
|
gem.description = %q{Official OmniAuth strategy for authenticating against the Michigan State University MSUnet OAuth2 provider.}
|
9
9
|
gem.homepage = "https://gitlab.msu.edu/msu-middleware-group/omniauth-msunet"
|
@@ -19,8 +19,5 @@ Gem::Specification.new do |gem|
|
|
19
19
|
gem.add_dependency 'omniauth', '~> 1.1'
|
20
20
|
gem.add_dependency 'omniauth-oauth2', '~> 1.1'
|
21
21
|
gem.add_dependency 'multi_json', '~> 1.7'
|
22
|
-
gem.add_development_dependency 'rspec', '~>
|
23
|
-
gem.add_development_dependency 'rack-test'
|
24
|
-
gem.add_development_dependency 'simplecov'
|
25
|
-
gem.add_development_dependency 'webmock'
|
22
|
+
gem.add_development_dependency 'rspec', '~> 3.4'
|
26
23
|
end
|
@@ -0,0 +1,82 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'omniauth-msunet'
|
3
|
+
|
4
|
+
describe OmniAuth::Strategies::MSUnet do
|
5
|
+
let(:request) { double('Request', params: {}, cookies: {}, env: {}) }
|
6
|
+
let(:app) { lambda { [200, {}, ["Hello."]] } }
|
7
|
+
|
8
|
+
subject do
|
9
|
+
OmniAuth::Strategies::MSUnet.new(app, 'appid', 'secret', @options || {}).tap do |strategy|
|
10
|
+
allow(strategy).to receive(:request) { request }
|
11
|
+
end
|
12
|
+
end
|
13
|
+
|
14
|
+
before do
|
15
|
+
OmniAuth.config.test_mode = true
|
16
|
+
end
|
17
|
+
|
18
|
+
after do
|
19
|
+
OmniAuth.config.test_mode = false
|
20
|
+
end
|
21
|
+
|
22
|
+
describe '#client_options' do
|
23
|
+
it 'has correct site' do
|
24
|
+
expect(subject.client.site).to eq('https://oauth.ais.msu.edu')
|
25
|
+
end
|
26
|
+
|
27
|
+
it 'has correct authorize_url' do
|
28
|
+
expect(subject.client.options[:authorize_url]).to eq('/oauth/authorize')
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'has correct token_url' do
|
32
|
+
expect(subject.client.options[:token_url]).to eq('/oauth/token')
|
33
|
+
end
|
34
|
+
|
35
|
+
context 'overrides' do
|
36
|
+
it 'should allow overriding the site' do
|
37
|
+
@options = { client_options: { site: 'https://domain.com' }}
|
38
|
+
expect(subject.client.site).to eq('https://domain.com')
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'should allow overriding the authorize_url' do
|
42
|
+
@options = { client_options: { authorize_url: 'https://domain.com' }}
|
43
|
+
expect(subject.client.authorize_url).to eq('https://domain.com')
|
44
|
+
end
|
45
|
+
|
46
|
+
it 'should allow overriding the token_url' do
|
47
|
+
@options = { client_options: { token_url: 'https://domain.com' }}
|
48
|
+
expect(subject.client.token_url).to eq('https://domain.com')
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
describe '#extra' do
|
54
|
+
let(:client) do
|
55
|
+
OAuth2::Client.new('abc', 'def') do |builder|
|
56
|
+
builder.request :url_encoded
|
57
|
+
builder.adapter :test do |stub|
|
58
|
+
stub.get('/oauth/me?access_token=') {|env| [200, {'content-type' => 'application/json'}, '{"email": "user@domain.com"}']}
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
let(:access_token) { OAuth2::AccessToken.from_hash(client, {}) }
|
63
|
+
before { allow(subject).to receive(:access_token).and_return(access_token) }
|
64
|
+
|
65
|
+
describe '#raw_info' do
|
66
|
+
it 'should include raw_info' do
|
67
|
+
expect(subject.raw_info).to eq('email' => 'user@domain.com')
|
68
|
+
end
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
describe '#callback_path' do
|
73
|
+
it 'has the correct default callback path' do
|
74
|
+
expect(subject.callback_path).to eq('/auth/msunet/callback')
|
75
|
+
end
|
76
|
+
|
77
|
+
it 'should set the callback_path parameter if present' do
|
78
|
+
@options = {callback_path: '/login'}
|
79
|
+
expect(subject.callback_path).to eq('/login')
|
80
|
+
end
|
81
|
+
end
|
82
|
+
end
|
data/spec/spec_helper.rb
ADDED
metadata
CHANGED
@@ -1,122 +1,82 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: omniauth-msunet
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Troy Murray
|
8
|
+
- Andrew Tomaka
|
8
9
|
autorequire:
|
9
10
|
bindir: bin
|
10
11
|
cert_chain: []
|
11
|
-
date:
|
12
|
+
date: 2016-04-04 00:00:00.000000000 Z
|
12
13
|
dependencies:
|
13
14
|
- !ruby/object:Gem::Dependency
|
14
15
|
name: omniauth
|
15
16
|
requirement: !ruby/object:Gem::Requirement
|
16
17
|
requirements:
|
17
|
-
- - ~>
|
18
|
+
- - "~>"
|
18
19
|
- !ruby/object:Gem::Version
|
19
20
|
version: '1.1'
|
20
21
|
type: :runtime
|
21
22
|
prerelease: false
|
22
23
|
version_requirements: !ruby/object:Gem::Requirement
|
23
24
|
requirements:
|
24
|
-
- - ~>
|
25
|
+
- - "~>"
|
25
26
|
- !ruby/object:Gem::Version
|
26
27
|
version: '1.1'
|
27
28
|
- !ruby/object:Gem::Dependency
|
28
29
|
name: omniauth-oauth2
|
29
30
|
requirement: !ruby/object:Gem::Requirement
|
30
31
|
requirements:
|
31
|
-
- - ~>
|
32
|
+
- - "~>"
|
32
33
|
- !ruby/object:Gem::Version
|
33
34
|
version: '1.1'
|
34
35
|
type: :runtime
|
35
36
|
prerelease: false
|
36
37
|
version_requirements: !ruby/object:Gem::Requirement
|
37
38
|
requirements:
|
38
|
-
- - ~>
|
39
|
+
- - "~>"
|
39
40
|
- !ruby/object:Gem::Version
|
40
41
|
version: '1.1'
|
41
42
|
- !ruby/object:Gem::Dependency
|
42
43
|
name: multi_json
|
43
44
|
requirement: !ruby/object:Gem::Requirement
|
44
45
|
requirements:
|
45
|
-
- - ~>
|
46
|
+
- - "~>"
|
46
47
|
- !ruby/object:Gem::Version
|
47
48
|
version: '1.7'
|
48
49
|
type: :runtime
|
49
50
|
prerelease: false
|
50
51
|
version_requirements: !ruby/object:Gem::Requirement
|
51
52
|
requirements:
|
52
|
-
- - ~>
|
53
|
+
- - "~>"
|
53
54
|
- !ruby/object:Gem::Version
|
54
55
|
version: '1.7'
|
55
56
|
- !ruby/object:Gem::Dependency
|
56
57
|
name: rspec
|
57
58
|
requirement: !ruby/object:Gem::Requirement
|
58
59
|
requirements:
|
59
|
-
- - ~>
|
60
|
+
- - "~>"
|
60
61
|
- !ruby/object:Gem::Version
|
61
|
-
version: '
|
62
|
+
version: '3.4'
|
62
63
|
type: :development
|
63
64
|
prerelease: false
|
64
65
|
version_requirements: !ruby/object:Gem::Requirement
|
65
66
|
requirements:
|
66
|
-
- - ~>
|
67
|
+
- - "~>"
|
67
68
|
- !ruby/object:Gem::Version
|
68
|
-
version: '
|
69
|
-
- !ruby/object:Gem::Dependency
|
70
|
-
name: rack-test
|
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'
|
83
|
-
- !ruby/object:Gem::Dependency
|
84
|
-
name: simplecov
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - '>='
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: '0'
|
90
|
-
type: :development
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - '>='
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: '0'
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: webmock
|
99
|
-
requirement: !ruby/object:Gem::Requirement
|
100
|
-
requirements:
|
101
|
-
- - '>='
|
102
|
-
- !ruby/object:Gem::Version
|
103
|
-
version: '0'
|
104
|
-
type: :development
|
105
|
-
prerelease: false
|
106
|
-
version_requirements: !ruby/object:Gem::Requirement
|
107
|
-
requirements:
|
108
|
-
- - '>='
|
109
|
-
- !ruby/object:Gem::Version
|
110
|
-
version: '0'
|
69
|
+
version: '3.4'
|
111
70
|
description: Official OmniAuth strategy for authenticating against the Michigan State
|
112
71
|
University MSUnet OAuth2 provider.
|
113
72
|
email:
|
114
73
|
- tm@msu.edu
|
74
|
+
- atomaka@msu.edu
|
115
75
|
executables: []
|
116
76
|
extensions: []
|
117
77
|
extra_rdoc_files: []
|
118
78
|
files:
|
119
|
-
- .gitignore
|
79
|
+
- ".gitignore"
|
120
80
|
- CHANGELOG.md
|
121
81
|
- Gemfile
|
122
82
|
- LICENSE.md
|
@@ -125,6 +85,8 @@ files:
|
|
125
85
|
- lib/omniauth-msunet/version.rb
|
126
86
|
- lib/omniauth/strategies/msunet.rb
|
127
87
|
- omniauth-msunet.gemspec
|
88
|
+
- spec/omniauth/strategies/msunet_spec.rb
|
89
|
+
- spec/spec_helper.rb
|
128
90
|
homepage: https://gitlab.msu.edu/msu-middleware-group/omniauth-msunet
|
129
91
|
licenses:
|
130
92
|
- MSU
|
@@ -135,18 +97,20 @@ require_paths:
|
|
135
97
|
- lib
|
136
98
|
required_ruby_version: !ruby/object:Gem::Requirement
|
137
99
|
requirements:
|
138
|
-
- -
|
100
|
+
- - ">="
|
139
101
|
- !ruby/object:Gem::Version
|
140
102
|
version: '0'
|
141
103
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
142
104
|
requirements:
|
143
|
-
- -
|
105
|
+
- - ">="
|
144
106
|
- !ruby/object:Gem::Version
|
145
107
|
version: '0'
|
146
108
|
requirements: []
|
147
109
|
rubyforge_project:
|
148
|
-
rubygems_version: 2.
|
110
|
+
rubygems_version: 2.6.2
|
149
111
|
signing_key:
|
150
112
|
specification_version: 4
|
151
113
|
summary: Michigan State University MSUnet OmniAuth strategy.
|
152
|
-
test_files:
|
114
|
+
test_files:
|
115
|
+
- spec/omniauth/strategies/msunet_spec.rb
|
116
|
+
- spec/spec_helper.rb
|