shibbolite 0.0.1 → 1.1.0

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.
Files changed (38) hide show
  1. checksums.yaml +7 -0
  2. data/README.rdoc +9 -11
  3. data/app/concerns/shibbolite/filters.rb +26 -8
  4. data/app/concerns/shibbolite/helpers.rb +6 -0
  5. data/app/controllers/shibbolite/shibboleth_controller.rb +11 -1
  6. data/lib/shibbolite/version.rb +1 -1
  7. data/spec/controllers/filters_test_controller_spec.rb +62 -3
  8. data/spec/controllers/helpers_test_controller_spec.rb +29 -12
  9. data/spec/dummy/app/controllers/filters_test_controller.rb +10 -0
  10. data/spec/dummy/app/controllers/helpers_test_controller.rb +5 -0
  11. data/spec/dummy/app/views/static/home.html.erb +3 -1
  12. data/spec/dummy/config/environments/test.rb +1 -1
  13. data/spec/dummy/db/test.sqlite3 +0 -0
  14. data/spec/dummy/log/development.log +727 -0
  15. data/spec/dummy/log/test.log +24242 -0
  16. data/spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  17. data/spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  18. data/spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  19. data/spec/dummy/tmp/cache/assets/development/sprockets/371bf96e99717688ed7313a0c53f4212 +0 -0
  20. data/spec/dummy/tmp/cache/assets/development/sprockets/510da110ae528e2d22533be39ff696c5 +0 -0
  21. data/spec/dummy/tmp/cache/assets/development/sprockets/6fc757c2c8329244ca95d6909865bbc2 +0 -0
  22. data/spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  23. data/spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  24. data/spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  25. data/spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  26. data/spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  27. data/spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  28. data/spec/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212 +0 -0
  29. data/spec/dummy/tmp/cache/assets/test/sprockets/6fc757c2c8329244ca95d6909865bbc2 +0 -0
  30. data/spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  31. data/spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  32. data/spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  33. data/spec/dummy/tmp/restart.txt +0 -0
  34. data/spec/spec_helper.rb +1 -0
  35. data/spec/support/controllers/shared_access_control_examples.rb +63 -0
  36. data/spec/support/controllers/shared_auth_helpers.rb +25 -0
  37. data/spec/support/features/session_helpers.rb +12 -0
  38. metadata +102 -110
File without changes
data/spec/spec_helper.rb CHANGED
@@ -16,6 +16,7 @@ RSpec.configure do |config|
16
16
  config.use_transactional_fixtures = true
17
17
  config.infer_base_class_for_anonymous_controllers = false
18
18
  config.order = "random"
19
+ config.infer_spec_type_from_file_location!
19
20
 
20
21
  config.before(:suite) do
21
22
  DatabaseCleaner.strategy = :transaction
@@ -0,0 +1,63 @@
1
+ module Controllers
2
+
3
+ # use with require_group filter
4
+ shared_examples 'action requires groups' do |groups, verb, action, options = {}|
5
+
6
+ describe "require_group for: #{verb.upcase} ##{action}" do
7
+ include_context 'ac_setup', action
8
+
9
+ include_examples 'access control blocks action', verb, action, options
10
+
11
+ Array(groups).each do |group|
12
+ it "executes the action when the user is in group '#{group.to_s}'" do
13
+ log_in_as({umbcusername: 'test_user', group: group.to_s})
14
+ send(verb, action, options)
15
+ expect(controller).to have_received(action)
16
+ end
17
+ end
18
+ end
19
+ end
20
+
21
+ # use with require_attribute filter, checks for shibboleth
22
+ # set attributes
23
+ shared_examples 'action requires attribute' do |attr, attr_value, verb, action, options = {}|
24
+
25
+ describe "require_attribute for: #{verb.upcase} ##{action}" do
26
+ include_context 'ac_setup', action
27
+
28
+ include_examples 'access control blocks action', verb, action, options
29
+
30
+ it "executes action when user has attribute :#{attr} => '#{attr_value}'" do
31
+ log_in_as({umbcusername: 'test_user', group: nil})
32
+ set_env_attribute(attr, attr_value)
33
+ send(verb, action, options)
34
+ expect(controller).to have_received(action)
35
+ end
36
+ end
37
+ end
38
+
39
+ # use with require_group_or_attribute filter, which checks
40
+ # for shibboleth set attributes in request.env, as well
41
+ # as any groups assigned to current_user
42
+ shared_examples 'action requires groups or attribute' do |groups, attr, attr_value, verb, action, options = {}|
43
+ include_examples 'action requires attribute', attr, attr_value, verb, action, options
44
+ include_examples 'action requires groups', groups, verb, action, options
45
+ end
46
+
47
+ # used to DRY other example groups
48
+ shared_examples 'access control blocks action' do |verb, action, options = {}|
49
+ it 'does not execute the action when current user is not authorized' do
50
+ log_in_as({umbcusername: 'unauthorized', group: nil})
51
+ send(verb, action, options)
52
+ expect(controller).not_to have_received(action)
53
+ end
54
+ end
55
+
56
+ shared_context 'ac_setup' do |action|
57
+ before do
58
+ allow(controller).to receive(action)
59
+ # prevents 'missing template' errors
60
+ allow(controller).to receive(:render)
61
+ end
62
+ end
63
+ end
@@ -0,0 +1,25 @@
1
+ module Controllers
2
+ shared_context 'auth_helpers' do
3
+
4
+ # lets current_user return the specified attributes for simulating
5
+ # authentication methods for shibbolite
6
+ def log_in_as (options = {umbcusername: 'current_user'})
7
+ @c_user = FactoryGirl.build(:user, options)
8
+ User.stub(:find_user) { @c_user }
9
+ session[:umbcusername] = options[:umbcusername]
10
+ end
11
+
12
+ # sets a specific attribute in
13
+ # request.env for the current user
14
+ def set_env_attribute(attr, value)
15
+ request.env[attr.to_s] = value
16
+ end
17
+
18
+ def logout
19
+ session.delete(:umbcusername)
20
+ @c_user = nil
21
+ @current_user = nil
22
+ end
23
+
24
+ end
25
+ end
@@ -0,0 +1,12 @@
1
+ module Features
2
+ module SessionHelpers
3
+
4
+ # hacked login, but the alternative is
5
+ # not having integration tests when
6
+ # using a Shibboleth based auth
7
+ def sign_in_as(group)
8
+ FactoryGirl.create(:user, umbcusername: 'test_user', group: group)
9
+ page.driver.browser.process_and_follow_redirects(:get, '/shibbolite/login', {}, {'umbcusername' => 'test_user'})
10
+ end
11
+ end
12
+ end
metadata CHANGED
@@ -1,128 +1,113 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: shibbolite
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
5
- prerelease:
4
+ version: 1.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - David Bassett
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-04-15 00:00:00.000000000 Z
11
+ date: 2015-03-31 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: rails
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
- version: '4.0'
19
+ version: '4'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ~>
24
+ - - "~>"
28
25
  - !ruby/object:Gem::Version
29
- version: '4.0'
26
+ version: '4'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: sqlite3
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: '1.3'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ~>
38
+ - - "~>"
44
39
  - !ruby/object:Gem::Version
45
40
  version: '1.3'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: rspec-rails
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ~>
45
+ - - "~>"
52
46
  - !ruby/object:Gem::Version
53
- version: '2.14'
47
+ version: '3.2'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ~>
52
+ - - "~>"
60
53
  - !ruby/object:Gem::Version
61
- version: '2.14'
54
+ version: '3.2'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: factory_girl_rails
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ~>
59
+ - - "~>"
68
60
  - !ruby/object:Gem::Version
69
- version: '4.4'
61
+ version: '4.5'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ~>
66
+ - - "~>"
76
67
  - !ruby/object:Gem::Version
77
- version: '4.4'
68
+ version: '4.5'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: guard-rspec
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ~>
73
+ - - "~>"
84
74
  - !ruby/object:Gem::Version
85
- version: '4.2'
75
+ version: '4.5'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ~>
80
+ - - "~>"
92
81
  - !ruby/object:Gem::Version
93
- version: '4.2'
82
+ version: '4.5'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: fuubar
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ~>
87
+ - - "~>"
100
88
  - !ruby/object:Gem::Version
101
- version: '1.3'
89
+ version: '2.0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ~>
94
+ - - "~>"
108
95
  - !ruby/object:Gem::Version
109
- version: '1.3'
96
+ version: '2.0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: database_cleaner
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ~>
101
+ - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: '1.2'
103
+ version: '1.4'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ~>
108
+ - - "~>"
124
109
  - !ruby/object:Gem::Version
125
- version: '1.2'
110
+ version: '1.4'
126
111
  description: Simple access control for Shibboleth/Rails environments
127
112
  email:
128
113
  - dabassett.github@gmail.com
@@ -130,119 +115,122 @@ executables: []
130
115
  extensions: []
131
116
  extra_rdoc_files: []
132
117
  files:
133
- - app/concerns/shibbolite/user.rb
118
+ - MIT-LICENSE
119
+ - README.rdoc
120
+ - Rakefile
134
121
  - app/concerns/shibbolite/filters.rb
135
122
  - app/concerns/shibbolite/helpers.rb
123
+ - app/concerns/shibbolite/user.rb
136
124
  - app/controllers/shibbolite/shibboleth_controller.rb
137
125
  - app/views/layouts/shibbolite/shibboleth.html.erb
138
- - app/views/shibbolite/shibboleth/logout_message.html.erb
139
126
  - app/views/shibbolite/shibboleth/access_denied.html.erb
127
+ - app/views/shibbolite/shibboleth/logout_message.html.erb
140
128
  - config/routes.rb
141
- - lib/generators/shibbolite/migration_generator.rb
142
129
  - lib/generators/shibbolite/install_generator.rb
130
+ - lib/generators/shibbolite/migration_generator.rb
143
131
  - lib/generators/templates/shibbolite_config.rb
144
132
  - lib/shibbolite.rb
145
- - lib/shibbolite/version.rb
146
133
  - lib/shibbolite/engine.rb
147
- - MIT-LICENSE
148
- - Rakefile
149
- - README.rdoc
150
- - spec/dummy/log/development.log
151
- - spec/dummy/log/test.log
152
- - spec/dummy/config/initializers/wrap_parameters.rb
153
- - spec/dummy/config/initializers/shibbolite_config.rb
154
- - spec/dummy/config/initializers/session_store.rb
155
- - spec/dummy/config/initializers/secret_token.rb
156
- - spec/dummy/config/initializers/filter_parameter_logging.rb
157
- - spec/dummy/config/environment.rb
158
- - spec/dummy/config/boot.rb
159
- - spec/dummy/config/database.yml
160
- - spec/dummy/config/routes.rb
161
- - spec/dummy/config/application.rb
162
- - spec/dummy/config/environments/development.rb
163
- - spec/dummy/config/environments/production.rb
164
- - spec/dummy/config/environments/test.rb
134
+ - lib/shibbolite/version.rb
135
+ - spec/controllers/filters_test_controller_spec.rb
136
+ - spec/controllers/helpers_test_controller_spec.rb
137
+ - spec/controllers/shibbolite/shibboleth_controller_spec.rb
138
+ - spec/controllers/static_controller_spec.rb
165
139
  - spec/dummy/Rakefile
166
- - spec/dummy/bin/bundle
167
- - spec/dummy/bin/rails
168
- - spec/dummy/bin/rake
169
- - spec/dummy/config.ru
140
+ - spec/dummy/app/assets/javascripts/application.js
141
+ - spec/dummy/app/assets/stylesheets/application.css
142
+ - spec/dummy/app/assets/stylesheets/scaffold.css
170
143
  - spec/dummy/app/controllers/application_controller.rb
171
144
  - spec/dummy/app/controllers/filters_test_controller.rb
172
- - spec/dummy/app/controllers/static_controller.rb
173
145
  - spec/dummy/app/controllers/helpers_test_controller.rb
174
- - spec/dummy/app/views/layouts/application.html.erb
146
+ - spec/dummy/app/controllers/static_controller.rb
147
+ - spec/dummy/app/models/user.rb
148
+ - spec/dummy/app/views/filters_test/dummy.html.erb
175
149
  - spec/dummy/app/views/helpers_test/dummy.html.erb
176
- - spec/dummy/app/views/static/user_resource.html.erb
150
+ - spec/dummy/app/views/layouts/application.html.erb
177
151
  - spec/dummy/app/views/static/admin_resource.html.erb
178
152
  - spec/dummy/app/views/static/home.html.erb
179
- - spec/dummy/app/views/filters_test/dummy.html.erb
180
- - spec/dummy/app/models/user.rb
181
- - spec/dummy/app/assets/javascripts/application.js
182
- - spec/dummy/app/assets/stylesheets/scaffold.css
183
- - spec/dummy/app/assets/stylesheets/application.css
184
- - spec/dummy/public/500.html
185
- - spec/dummy/public/404.html
186
- - spec/dummy/public/favicon.ico
187
- - spec/dummy/public/422.html
188
- - spec/dummy/db/migrate/20140414172304_add_shibboleth_attributes_to_users.rb
153
+ - spec/dummy/app/views/static/user_resource.html.erb
154
+ - spec/dummy/bin/bundle
155
+ - spec/dummy/bin/rails
156
+ - spec/dummy/bin/rake
157
+ - spec/dummy/config.ru
158
+ - spec/dummy/config/application.rb
159
+ - spec/dummy/config/boot.rb
160
+ - spec/dummy/config/database.yml
161
+ - spec/dummy/config/environment.rb
162
+ - spec/dummy/config/environments/development.rb
163
+ - spec/dummy/config/environments/production.rb
164
+ - spec/dummy/config/environments/test.rb
165
+ - spec/dummy/config/initializers/filter_parameter_logging.rb
166
+ - spec/dummy/config/initializers/secret_token.rb
167
+ - spec/dummy/config/initializers/session_store.rb
168
+ - spec/dummy/config/initializers/shibbolite_config.rb
169
+ - spec/dummy/config/initializers/wrap_parameters.rb
170
+ - spec/dummy/config/routes.rb
171
+ - spec/dummy/db/development.sqlite3
189
172
  - spec/dummy/db/migrate/20140404162119_create_users.rb
173
+ - spec/dummy/db/migrate/20140414172304_add_shibboleth_attributes_to_users.rb
190
174
  - spec/dummy/db/schema.rb
191
175
  - spec/dummy/db/test.sqlite3
192
- - spec/dummy/db/development.sqlite3
193
- - spec/dummy/tmp/cache/assets/development/sprockets/510da110ae528e2d22533be39ff696c5
194
- - spec/dummy/tmp/cache/assets/development/sprockets/6fc757c2c8329244ca95d6909865bbc2
195
- - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
196
- - spec/dummy/tmp/cache/assets/development/sprockets/35634bbec2c7419d3efa1a72c23db7e0
197
- - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
198
- - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
176
+ - spec/dummy/log/development.log
177
+ - spec/dummy/log/test.log
178
+ - spec/dummy/public/404.html
179
+ - spec/dummy/public/422.html
180
+ - spec/dummy/public/500.html
181
+ - spec/dummy/public/favicon.ico
199
182
  - spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
200
- - spec/dummy/tmp/cache/assets/development/sprockets/371bf96e99717688ed7313a0c53f4212
201
- - spec/dummy/tmp/cache/assets/development/sprockets/368329c663775348c7db5500ff959f80
202
183
  - spec/dummy/tmp/cache/assets/development/sprockets/1be2f6345400afa38cfd6c919f2cf297
203
- - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
204
- - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
205
184
  - spec/dummy/tmp/cache/assets/development/sprockets/27c12eb9977c123bfb2ef83640964c02
185
+ - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
186
+ - spec/dummy/tmp/cache/assets/development/sprockets/35634bbec2c7419d3efa1a72c23db7e0
187
+ - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
188
+ - spec/dummy/tmp/cache/assets/development/sprockets/368329c663775348c7db5500ff959f80
189
+ - spec/dummy/tmp/cache/assets/development/sprockets/371bf96e99717688ed7313a0c53f4212
190
+ - spec/dummy/tmp/cache/assets/development/sprockets/510da110ae528e2d22533be39ff696c5
191
+ - spec/dummy/tmp/cache/assets/development/sprockets/6fc757c2c8329244ca95d6909865bbc2
206
192
  - spec/dummy/tmp/cache/assets/development/sprockets/83de9c3d672e9a3420dd8a36aaaab517
207
- - spec/dummy/tmp/cache/assets/test/sprockets/6fc757c2c8329244ca95d6909865bbc2
208
- - spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953
209
- - spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6
210
- - spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994
193
+ - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
194
+ - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
195
+ - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
211
196
  - spec/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705
212
- - spec/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212
213
197
  - spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af
198
+ - spec/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953
199
+ - spec/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212
200
+ - spec/dummy/tmp/cache/assets/test/sprockets/6fc757c2c8329244ca95d6909865bbc2
201
+ - spec/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994
202
+ - spec/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6
214
203
  - spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655
215
- - spec/controllers/filters_test_controller_spec.rb
216
- - spec/controllers/helpers_test_controller_spec.rb
217
- - spec/controllers/static_controller_spec.rb
218
- - spec/controllers/shibbolite/shibboleth_controller_spec.rb
219
- - spec/factories/users.rb
204
+ - spec/dummy/tmp/restart.txt
220
205
  - spec/factories/shibboleth_attributes.rb
206
+ - spec/factories/users.rb
221
207
  - spec/models/user_spec.rb
222
208
  - spec/spec_helper.rb
209
+ - spec/support/controllers/shared_access_control_examples.rb
210
+ - spec/support/controllers/shared_auth_helpers.rb
211
+ - spec/support/features/session_helpers.rb
223
212
  homepage: https://github.com/dabassett/shibbolite
224
213
  licenses: []
214
+ metadata: {}
225
215
  post_install_message:
226
216
  rdoc_options: []
227
217
  require_paths:
228
218
  - lib
229
219
  required_ruby_version: !ruby/object:Gem::Requirement
230
- none: false
231
220
  requirements:
232
- - - ! '>='
221
+ - - ">="
233
222
  - !ruby/object:Gem::Version
234
- version: 1.9.3
223
+ version: 2.1.2
235
224
  required_rubygems_version: !ruby/object:Gem::Requirement
236
- none: false
237
225
  requirements:
238
- - - ! '>='
226
+ - - ">="
239
227
  - !ruby/object:Gem::Version
240
228
  version: '0'
241
229
  requirements: []
242
230
  rubyforge_project:
243
- rubygems_version: 1.8.25
231
+ rubygems_version: 2.2.2
244
232
  signing_key:
245
- specification_version: 3
233
+ specification_version: 4
246
234
  summary: Simple access control for Shibboleth/Rails environments
247
235
  test_files:
248
236
  - spec/dummy/log/development.log
@@ -310,6 +298,7 @@ test_files:
310
298
  - spec/dummy/tmp/cache/assets/test/sprockets/371bf96e99717688ed7313a0c53f4212
311
299
  - spec/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af
312
300
  - spec/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655
301
+ - spec/dummy/tmp/restart.txt
313
302
  - spec/controllers/filters_test_controller_spec.rb
314
303
  - spec/controllers/helpers_test_controller_spec.rb
315
304
  - spec/controllers/static_controller_spec.rb
@@ -318,3 +307,6 @@ test_files:
318
307
  - spec/factories/shibboleth_attributes.rb
319
308
  - spec/models/user_spec.rb
320
309
  - spec/spec_helper.rb
310
+ - spec/support/features/session_helpers.rb
311
+ - spec/support/controllers/shared_auth_helpers.rb
312
+ - spec/support/controllers/shared_access_control_examples.rb