devise_cas_authenticatable 1.10.0 → 2.0.0.alpha1
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 +5 -5
- data/.github/workflows/ruby.yml +32 -0
- data/.gitignore +0 -1
- data/CHANGELOG.md +22 -0
- data/Gemfile +8 -0
- data/README.md +84 -80
- data/app/controllers/devise/cas_sessions_controller.rb +23 -67
- data/app/views/devise/cas_sessions/unregistered.html.erb +3 -3
- data/devise_cas_authenticatable.gemspec +19 -27
- data/lib/devise_cas_authenticatable.rb +15 -70
- data/lib/devise_cas_authenticatable/model.rb +21 -28
- data/lib/devise_cas_authenticatable/routes.rb +22 -44
- data/lib/devise_cas_authenticatable/strategy.rb +14 -24
- data/spec/model_spec.rb +29 -35
- data/spec/routes_spec.rb +26 -26
- data/spec/scenario/app/assets/config/manifest.js +0 -0
- data/spec/scenario/app/controllers/home_controller.rb +2 -2
- data/spec/scenario/app/views/layouts/application.html.erb +1 -3
- data/spec/scenario/config/application.rb +1 -27
- data/spec/scenario/config/initializers/backtrace_silencers.rb +1 -1
- data/spec/scenario/config/initializers/devise.rb +2 -2
- data/spec/scenario/config/routes.rb +0 -4
- data/spec/scenario/db/migrate/20100401102949_create_tables.rb +3 -3
- data/spec/scenario/db/migrate/20111002012903_add_sessions_table.rb +1 -1
- data/spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb +1 -1
- data/spec/spec_helper.rb +38 -8
- data/spec/strategy_spec.rb +43 -82
- data/spec/support/migrations.rb +1 -1
- metadata +18 -122
- data/.travis.yml +0 -45
- data/Gemfile.devise12 +0 -11
- data/Gemfile.devise13 +0 -11
- data/Gemfile.devise14 +0 -11
- data/Gemfile.devise15 +0 -11
- data/Gemfile.devise20 +0 -11
- data/Gemfile.devise21 +0 -13
- data/Gemfile.devise30 +0 -12
- data/Gemfile.devise42 +0 -13
- data/lib/devise_cas_authenticatable/exceptions.rb +0 -10
- data/lib/devise_cas_authenticatable/memcache_checker.rb +0 -42
- data/lib/devise_cas_authenticatable/railtie.rb +0 -14
- data/lib/devise_cas_authenticatable/schema.rb +0 -20
- data/lib/devise_cas_authenticatable/session_store_identifier.rb +0 -29
- data/lib/devise_cas_authenticatable/single_sign_out.rb +0 -60
- data/lib/devise_cas_authenticatable/single_sign_out/rack.rb +0 -39
- data/lib/devise_cas_authenticatable/single_sign_out/strategies.rb +0 -58
- data/lib/devise_cas_authenticatable/single_sign_out/strategies/base.rb +0 -11
- data/lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb +0 -31
- data/lib/devise_cas_authenticatable/single_sign_out/strategies/redis_cache.rb +0 -33
- data/lib/devise_cas_authenticatable/single_sign_out/warden_failure_app.rb +0 -46
- data/spec/config_spec.rb +0 -27
- data/spec/memcache_checker_spec.rb +0 -49
- data/spec/scenario/config/castronaut.yml +0 -32
- data/spec/scenario/config/initializers/castronaut.rb +0 -1
- data/spec/scenario/config/initializers/session_store.rb +0 -8
- data/spec/single_sign_out_spec.rb +0 -51
- data/spec/support/urls.rb +0 -19
- data/spec/warden_failure_app_spec.rb +0 -53
data/spec/routes_spec.rb
CHANGED
@@ -1,38 +1,38 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe
|
3
|
+
describe 'routing' do
|
4
4
|
include RSpec::Rails::RoutingExampleGroup
|
5
5
|
|
6
|
-
it
|
7
|
-
get(
|
6
|
+
it 'routes to #service' do
|
7
|
+
expect(get('/users/service')).to route_to('devise/cas_sessions#service')
|
8
8
|
end
|
9
|
-
|
10
|
-
it
|
11
|
-
get(
|
9
|
+
|
10
|
+
it 'routes to #new' do
|
11
|
+
expect(get('/users/sign_in')).to route_to('devise/cas_sessions#new')
|
12
12
|
end
|
13
|
-
|
14
|
-
it
|
15
|
-
post(
|
13
|
+
|
14
|
+
it 'routes to #create' do
|
15
|
+
expect(post('/users/sign_in')).to route_to('devise/cas_sessions#create')
|
16
16
|
end
|
17
|
-
|
18
|
-
it
|
19
|
-
|
17
|
+
|
18
|
+
it 'routes to #destroy' do
|
19
|
+
expect(delete('/users/sign_out')).to route_to('devise/cas_sessions#destroy')
|
20
20
|
end
|
21
|
-
|
22
|
-
it
|
23
|
-
get(
|
21
|
+
|
22
|
+
it 'routes to #unregistered' do
|
23
|
+
expect(get('/users/unregistered')).to route_to('devise/cas_sessions#unregistered')
|
24
24
|
end
|
25
25
|
end
|
26
|
-
|
26
|
+
|
27
27
|
describe Devise::CasSessionsController do
|
28
|
-
include RSpec::Rails::ControllerExampleGroup
|
29
|
-
|
30
|
-
it
|
31
|
-
controller.
|
32
|
-
controller.user_service_path.
|
33
|
-
controller.new_user_session_path.
|
34
|
-
controller.user_session_path.
|
35
|
-
controller.destroy_user_session_path.
|
36
|
-
controller.unregistered_user_session_path.
|
28
|
+
include RSpec::Rails::ControllerExampleGroup
|
29
|
+
|
30
|
+
it 'should have the right route names' do
|
31
|
+
expect(controller).to respond_to('user_service_path', 'new_user_session_path', 'user_session_path', 'destroy_user_session_path')
|
32
|
+
expect(controller.user_service_path).to eq('/users/service')
|
33
|
+
expect(controller.new_user_session_path).to eq('/users/sign_in')
|
34
|
+
expect(controller.user_session_path).to eq('/users/sign_in')
|
35
|
+
expect(controller.destroy_user_session_path).to eq('/users/sign_out')
|
36
|
+
expect(controller.unregistered_user_session_path).to eq('/users/unregistered')
|
37
37
|
end
|
38
|
-
end
|
38
|
+
end
|
File without changes
|
@@ -4,35 +4,9 @@ require 'rails/all'
|
|
4
4
|
|
5
5
|
Bundler.require(:default, Rails.env) if defined?(Bundler)
|
6
6
|
|
7
|
-
require 'castronaut'
|
8
|
-
class TestAdapter
|
9
|
-
def self.reset_valid_users!
|
10
|
-
@@valid_users = {
|
11
|
-
"joeuser" => "joepassword"
|
12
|
-
}
|
13
|
-
end
|
14
|
-
reset_valid_users!
|
15
|
-
|
16
|
-
def self.register_valid_user(username, password)
|
17
|
-
@@valid_users[username] = password
|
18
|
-
end
|
19
|
-
|
20
|
-
def self.authenticate(username, password)
|
21
|
-
error_message = if @@valid_users[username] == password
|
22
|
-
nil
|
23
|
-
else
|
24
|
-
"Invalid password"
|
25
|
-
end
|
26
|
-
|
27
|
-
Castronaut::AuthenticationResult.new(username, error_message)
|
28
|
-
end
|
29
|
-
end
|
30
|
-
|
31
|
-
Castronaut::Adapters.register("test_adapter", TestAdapter)
|
32
|
-
Castronaut.config = Castronaut::Configuration.load(File.expand_path(File.join(File.dirname(__FILE__), "castronaut.yml")))
|
33
|
-
|
34
7
|
module Scenario
|
35
8
|
class Application < Rails::Application
|
36
9
|
config.active_support.deprecation = :stderr
|
10
|
+
config.rack_cas.fake = true
|
37
11
|
end
|
38
12
|
end
|
@@ -4,4 +4,4 @@
|
|
4
4
|
# Rails.backtrace_cleaner.add_silencer { |line| line =~ /my_noisy_library/ }
|
5
5
|
|
6
6
|
# You can also remove all the silencers if you're trying to debug a problem that might stem from framework code.
|
7
|
-
|
7
|
+
Rails.backtrace_cleaner.remove_silencers!
|
@@ -1,17 +1,17 @@
|
|
1
|
-
class CreateTables < ActiveRecord::Migration
|
1
|
+
class CreateTables < ActiveRecord::Migration[4.2]
|
2
2
|
def self.up
|
3
3
|
create_table :users do |t|
|
4
4
|
t.string :username, :null => false
|
5
5
|
t.datetime :remember_created_at
|
6
6
|
t.string :email
|
7
|
-
|
7
|
+
|
8
8
|
# trackable
|
9
9
|
t.integer :sign_in_count
|
10
10
|
t.datetime :current_sign_in_at
|
11
11
|
t.datetime :last_sign_in_at
|
12
12
|
t.string :current_sign_in_ip
|
13
13
|
t.string :last_sign_in_ip
|
14
|
-
|
14
|
+
|
15
15
|
t.timestamps
|
16
16
|
end
|
17
17
|
|
data/spec/spec_helper.rb
CHANGED
@@ -4,20 +4,50 @@ $:.unshift File.expand_path('../../lib', __FILE__)
|
|
4
4
|
|
5
5
|
require "scenario/config/environment"
|
6
6
|
require 'rspec/rails'
|
7
|
-
require 'sham_rack'
|
8
7
|
require 'capybara/rspec'
|
9
|
-
require 'timecop'
|
10
8
|
require 'pry'
|
11
9
|
|
10
|
+
require 'database_cleaner/active_record'
|
11
|
+
|
12
12
|
RSpec.configure do |config|
|
13
|
-
config.
|
13
|
+
config.before(:suite) do
|
14
|
+
DatabaseCleaner.strategy = :transaction
|
15
|
+
DatabaseCleaner.clean_with(:truncation)
|
16
|
+
end
|
17
|
+
|
18
|
+
config.around(:each) do |example|
|
19
|
+
DatabaseCleaner.cleaning do
|
20
|
+
example.run
|
21
|
+
end
|
22
|
+
end
|
14
23
|
end
|
15
24
|
|
16
|
-
|
17
|
-
|
18
|
-
|
25
|
+
# Patching Rack::FakeCAS so that it uses the real, configured service URL as the service param
|
26
|
+
require 'rack/fake_cas'
|
27
|
+
class Rack::FakeCAS
|
28
|
+
protected
|
19
29
|
|
20
|
-
|
30
|
+
def login_page
|
31
|
+
<<-EOS
|
32
|
+
<!doctype html>
|
33
|
+
<html lang="en">
|
34
|
+
<head>
|
35
|
+
<meta charset="utf-8"/>
|
36
|
+
<title>Fake CAS</title>
|
37
|
+
</head>
|
38
|
+
<body>
|
39
|
+
<form action="#{@request.script_name}/login" method="post">
|
40
|
+
<input type="hidden" name="service" value="#{RackCAS.config.service}"/>
|
41
|
+
<label for="username">Username</label>
|
42
|
+
<input id="username" name="username" type="text"/>
|
43
|
+
<label for="password">Password</label>
|
44
|
+
<input id="password" name="password" type="password"/>
|
45
|
+
<input type="submit" value="Login"/>
|
46
|
+
</form>
|
47
|
+
</body>
|
48
|
+
</html>
|
49
|
+
EOS
|
50
|
+
end
|
21
51
|
end
|
22
52
|
|
23
|
-
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
53
|
+
Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
|
data/spec/strategy_spec.rb
CHANGED
@@ -1,93 +1,56 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe Devise::Strategies::CasAuthenticatable, :type =>
|
3
|
+
describe Devise::Strategies::CasAuthenticatable, :type => 'acceptance' do
|
4
4
|
include RSpec::Rails::RequestExampleGroup
|
5
5
|
include Capybara::DSL
|
6
6
|
|
7
7
|
before do
|
8
|
-
|
9
|
-
|
8
|
+
RackCAS.config.server_url = 'http://www.example.com/'
|
9
|
+
RackCAS.config.service = '/users/service'
|
10
10
|
|
11
11
|
User.delete_all
|
12
12
|
User.create! do |u|
|
13
|
-
u.username =
|
13
|
+
u.username = 'joeuser'
|
14
14
|
end
|
15
15
|
end
|
16
16
|
|
17
17
|
after do
|
18
|
-
|
19
|
-
end
|
20
|
-
|
21
|
-
def cas_login_url
|
22
|
-
@cas_login_url ||= begin
|
23
|
-
uri = URI.parse(Devise.cas_base_url + "/login")
|
24
|
-
uri.query = Rack::Utils.build_nested_query(:service => user_service_url)
|
25
|
-
uri.to_s
|
26
|
-
end
|
18
|
+
page.driver.submit :delete, destroy_user_session_url, {}
|
27
19
|
end
|
28
20
|
|
29
21
|
def cas_logout_url
|
30
|
-
@cas_logout_url ||= Devise.cas_base_url +
|
22
|
+
@cas_logout_url ||= Devise.cas_base_url + '/logout?service'
|
31
23
|
end
|
32
24
|
|
33
25
|
def sign_into_cas(username, password)
|
34
|
-
visit
|
35
|
-
|
36
|
-
fill_in
|
37
|
-
|
38
|
-
click_on "Login"
|
26
|
+
visit '/users/sign_in'
|
27
|
+
fill_in 'username', with: username
|
28
|
+
fill_in 'password', with: password
|
29
|
+
click_button 'Login'
|
39
30
|
end
|
40
31
|
|
41
|
-
describe
|
32
|
+
describe 'GET /protected/resource' do
|
42
33
|
before { get '/' }
|
43
34
|
|
44
35
|
it 'should redirect to sign-in' do
|
45
|
-
response.
|
46
|
-
response.
|
47
|
-
end
|
48
|
-
end
|
49
|
-
|
50
|
-
describe "GET /users/sign_in" do
|
51
|
-
before { get new_user_session_url }
|
52
|
-
|
53
|
-
it 'should redirect to CAS server' do
|
54
|
-
response.should be_redirect
|
55
|
-
response.should redirect_to(cas_login_url)
|
36
|
+
expect(response).to be_redirect
|
37
|
+
expect(response).to redirect_to(new_user_session_url)
|
56
38
|
end
|
57
39
|
end
|
58
40
|
|
59
|
-
it
|
60
|
-
sign_into_cas
|
61
|
-
current_url.
|
62
|
-
end
|
63
|
-
|
64
|
-
it "should fail to sign in with an invalid user" do
|
65
|
-
sign_into_cas "invaliduser", "invalidpassword"
|
66
|
-
current_url.should_not == root_url
|
67
|
-
end
|
68
|
-
|
69
|
-
describe "with a deactivated user" do
|
70
|
-
before do
|
71
|
-
@user = User.first
|
72
|
-
@user.deactivated = true
|
73
|
-
@user.save!
|
74
|
-
end
|
75
|
-
|
76
|
-
it "should fail to sign in" do
|
77
|
-
sign_into_cas "joeuser", "joepassword"
|
78
|
-
current_url.should == cas_logout_url
|
79
|
-
end
|
41
|
+
it 'should sign in with valid user' do
|
42
|
+
sign_into_cas 'joeuser', 'joepassword'
|
43
|
+
expect(current_url).to eq(root_url)
|
80
44
|
end
|
81
45
|
|
82
|
-
it
|
83
|
-
User.count.
|
84
|
-
TestAdapter.register_valid_user("newuser", "newpassword")
|
46
|
+
it 'should register new CAS users if set up to do so' do
|
47
|
+
expect(User.count).to eq(1)
|
85
48
|
Devise.cas_create_user = true
|
86
|
-
sign_into_cas
|
49
|
+
sign_into_cas 'newuser', 'newpassword'
|
87
50
|
|
88
|
-
current_url.
|
89
|
-
User.count.
|
90
|
-
User.find_by_username(
|
51
|
+
expect(current_url).to eq(root_url)
|
52
|
+
expect(User.count).to eq(2)
|
53
|
+
expect(User.find_by_username('newuser')).not_to be_nil
|
91
54
|
end
|
92
55
|
|
93
56
|
it "should register new CAS users if we're overriding the cas_create_user? method" do
|
@@ -98,14 +61,13 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
|
|
98
61
|
end
|
99
62
|
end
|
100
63
|
|
101
|
-
User.count.
|
102
|
-
TestAdapter.register_valid_user("newuser", "newpassword")
|
64
|
+
expect(User.count).to eq(1)
|
103
65
|
Devise.cas_create_user = false
|
104
|
-
sign_into_cas
|
66
|
+
sign_into_cas 'newuser', 'newpassword'
|
105
67
|
|
106
|
-
current_url.
|
107
|
-
User.count.
|
108
|
-
User.
|
68
|
+
expect(current_url).to eq(root_url)
|
69
|
+
expect(User.count).to eq(2)
|
70
|
+
expect(User.find_by(username: 'newuser')).not_to be_nil
|
109
71
|
ensure
|
110
72
|
class << User
|
111
73
|
remove_method :cas_create_user?
|
@@ -113,30 +75,29 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
|
|
113
75
|
end
|
114
76
|
end
|
115
77
|
|
116
|
-
it
|
117
|
-
User.count.
|
118
|
-
TestAdapter.register_valid_user("newuser", "newpassword")
|
78
|
+
it 'should fail CAS login if user is unregistered and cas_create_user is false' do
|
79
|
+
expect(User.count).to eq(1)
|
119
80
|
Devise.cas_create_user = false
|
120
|
-
sign_into_cas
|
81
|
+
sign_into_cas 'newuser', 'newpassword'
|
121
82
|
|
122
|
-
current_url.
|
123
|
-
User.count.
|
124
|
-
User.
|
83
|
+
expect(current_url).not_to eq(root_url)
|
84
|
+
expect(User.count).to eq(1)
|
85
|
+
expect(User.find_by(username: 'newuser')).to be_nil
|
125
86
|
|
126
|
-
click_on
|
127
|
-
fill_in
|
128
|
-
fill_in
|
129
|
-
click_on
|
130
|
-
current_url.
|
87
|
+
click_on 'sign in using a different account'
|
88
|
+
fill_in 'Username', with: 'joeuser'
|
89
|
+
fill_in 'Password', with: 'joepassword'
|
90
|
+
click_on 'Login'
|
91
|
+
expect(current_url).to eq(root_url)
|
131
92
|
end
|
132
93
|
|
133
|
-
it
|
94
|
+
it 'should work correctly with Devise trackable' do
|
134
95
|
user = User.first
|
135
|
-
user.
|
136
|
-
sign_into_cas
|
96
|
+
user.update!(last_sign_in_at: 1.day.ago, last_sign_in_ip: '1.2.3.4', sign_in_count: 41)
|
97
|
+
sign_into_cas 'joeuser', 'joepassword'
|
137
98
|
|
138
99
|
user.reload
|
139
|
-
user.last_sign_in_at.
|
140
|
-
user.sign_in_count.
|
100
|
+
expect(user.last_sign_in_at).to be >= 1.hour.ago
|
101
|
+
expect(user.sign_in_count).to eq(42)
|
141
102
|
end
|
142
103
|
end
|
data/spec/support/migrations.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
1
|
FileUtils.rm File.expand_path("../../scenario/db/*.sqlite3", __FILE__), :force => true
|
2
2
|
ActiveRecord::Base.logger = Logger.new(nil)
|
3
3
|
ActiveRecord::Migration.verbose = false
|
4
|
-
ActiveRecord::
|
4
|
+
ActiveRecord::MigrationContext.new(Rails.root.join('db', 'migrate'), ActiveRecord::SchemaMigration).migrate
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: devise_cas_authenticatable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 2.0.0.alpha1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Nat Budin
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-05-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: devise
|
@@ -17,92 +17,22 @@ dependencies:
|
|
17
17
|
requirements:
|
18
18
|
- - ">="
|
19
19
|
- !ruby/object:Gem::Version
|
20
|
-
version:
|
20
|
+
version: 4.0.0
|
21
21
|
type: :runtime
|
22
22
|
prerelease: false
|
23
23
|
version_requirements: !ruby/object:Gem::Requirement
|
24
24
|
requirements:
|
25
25
|
- - ">="
|
26
26
|
- !ruby/object:Gem::Version
|
27
|
-
version:
|
27
|
+
version: 4.0.0
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
29
|
+
name: rack-cas
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
|
-
requirements:
|
32
|
-
- - ">="
|
33
|
-
- !ruby/object:Gem::Version
|
34
|
-
version: 2.2.1
|
35
|
-
type: :runtime
|
36
|
-
prerelease: false
|
37
|
-
version_requirements: !ruby/object:Gem::Requirement
|
38
|
-
requirements:
|
39
|
-
- - ">="
|
40
|
-
- !ruby/object:Gem::Version
|
41
|
-
version: 2.2.1
|
42
|
-
- !ruby/object:Gem::Dependency
|
43
|
-
name: rails
|
44
|
-
requirement: !ruby/object:Gem::Requirement
|
45
|
-
requirements:
|
46
|
-
- - ">="
|
47
|
-
- !ruby/object:Gem::Version
|
48
|
-
version: 3.0.7
|
49
|
-
type: :development
|
50
|
-
prerelease: false
|
51
|
-
version_requirements: !ruby/object:Gem::Requirement
|
52
|
-
requirements:
|
53
|
-
- - ">="
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: 3.0.7
|
56
|
-
- !ruby/object:Gem::Dependency
|
57
|
-
name: rspec-rails
|
58
|
-
requirement: !ruby/object:Gem::Requirement
|
59
|
-
requirements:
|
60
|
-
- - ">="
|
61
|
-
- !ruby/object:Gem::Version
|
62
|
-
version: '0'
|
63
|
-
type: :development
|
64
|
-
prerelease: false
|
65
|
-
version_requirements: !ruby/object:Gem::Requirement
|
66
31
|
requirements:
|
67
32
|
- - ">="
|
68
33
|
- !ruby/object:Gem::Version
|
69
34
|
version: '0'
|
70
|
-
|
71
|
-
name: test-unit
|
72
|
-
requirement: !ruby/object:Gem::Requirement
|
73
|
-
requirements:
|
74
|
-
- - "~>"
|
75
|
-
- !ruby/object:Gem::Version
|
76
|
-
version: '3.0'
|
77
|
-
type: :development
|
78
|
-
prerelease: false
|
79
|
-
version_requirements: !ruby/object:Gem::Requirement
|
80
|
-
requirements:
|
81
|
-
- - "~>"
|
82
|
-
- !ruby/object:Gem::Version
|
83
|
-
version: '3.0'
|
84
|
-
- !ruby/object:Gem::Dependency
|
85
|
-
name: mocha
|
86
|
-
requirement: !ruby/object:Gem::Requirement
|
87
|
-
requirements:
|
88
|
-
- - ">="
|
89
|
-
- !ruby/object:Gem::Version
|
90
|
-
version: '0'
|
91
|
-
type: :development
|
92
|
-
prerelease: false
|
93
|
-
version_requirements: !ruby/object:Gem::Requirement
|
94
|
-
requirements:
|
95
|
-
- - ">="
|
96
|
-
- !ruby/object:Gem::Version
|
97
|
-
version: '0'
|
98
|
-
- !ruby/object:Gem::Dependency
|
99
|
-
name: shoulda
|
100
|
-
requirement: !ruby/object:Gem::Requirement
|
101
|
-
requirements:
|
102
|
-
- - ">="
|
103
|
-
- !ruby/object:Gem::Version
|
104
|
-
version: '0'
|
105
|
-
type: :development
|
35
|
+
type: :runtime
|
106
36
|
prerelease: false
|
107
37
|
version_requirements: !ruby/object:Gem::Requirement
|
108
38
|
requirements:
|
@@ -110,7 +40,7 @@ dependencies:
|
|
110
40
|
- !ruby/object:Gem::Version
|
111
41
|
version: '0'
|
112
42
|
- !ruby/object:Gem::Dependency
|
113
|
-
name:
|
43
|
+
name: capybara
|
114
44
|
requirement: !ruby/object:Gem::Requirement
|
115
45
|
requirements:
|
116
46
|
- - ">="
|
@@ -124,7 +54,7 @@ dependencies:
|
|
124
54
|
- !ruby/object:Gem::Version
|
125
55
|
version: '0'
|
126
56
|
- !ruby/object:Gem::Dependency
|
127
|
-
name:
|
57
|
+
name: database_cleaner-active_record
|
128
58
|
requirement: !ruby/object:Gem::Requirement
|
129
59
|
requirements:
|
130
60
|
- - ">="
|
@@ -138,7 +68,7 @@ dependencies:
|
|
138
68
|
- !ruby/object:Gem::Version
|
139
69
|
version: '0'
|
140
70
|
- !ruby/object:Gem::Dependency
|
141
|
-
name:
|
71
|
+
name: launchy
|
142
72
|
requirement: !ruby/object:Gem::Requirement
|
143
73
|
requirements:
|
144
74
|
- - ">="
|
@@ -152,7 +82,7 @@ dependencies:
|
|
152
82
|
- !ruby/object:Gem::Version
|
153
83
|
version: '0'
|
154
84
|
- !ruby/object:Gem::Dependency
|
155
|
-
name:
|
85
|
+
name: pry
|
156
86
|
requirement: !ruby/object:Gem::Requirement
|
157
87
|
requirements:
|
158
88
|
- - ">="
|
@@ -166,7 +96,7 @@ dependencies:
|
|
166
96
|
- !ruby/object:Gem::Version
|
167
97
|
version: '0'
|
168
98
|
- !ruby/object:Gem::Dependency
|
169
|
-
name:
|
99
|
+
name: rails
|
170
100
|
requirement: !ruby/object:Gem::Requirement
|
171
101
|
requirements:
|
172
102
|
- - ">="
|
@@ -180,7 +110,7 @@ dependencies:
|
|
180
110
|
- !ruby/object:Gem::Version
|
181
111
|
version: '0'
|
182
112
|
- !ruby/object:Gem::Dependency
|
183
|
-
name:
|
113
|
+
name: rspec-rails
|
184
114
|
requirement: !ruby/object:Gem::Requirement
|
185
115
|
requirements:
|
186
116
|
- - ">="
|
@@ -194,7 +124,7 @@ dependencies:
|
|
194
124
|
- !ruby/object:Gem::Version
|
195
125
|
version: '0'
|
196
126
|
- !ruby/object:Gem::Dependency
|
197
|
-
name:
|
127
|
+
name: sqlite3
|
198
128
|
requirement: !ruby/object:Gem::Requirement
|
199
129
|
requirements:
|
200
130
|
- - ">="
|
@@ -214,19 +144,12 @@ extensions: []
|
|
214
144
|
extra_rdoc_files:
|
215
145
|
- README.md
|
216
146
|
files:
|
147
|
+
- ".github/workflows/ruby.yml"
|
217
148
|
- ".gitignore"
|
218
149
|
- ".project"
|
219
150
|
- ".rspec"
|
220
|
-
- ".travis.yml"
|
221
151
|
- CHANGELOG.md
|
222
|
-
- Gemfile
|
223
|
-
- Gemfile.devise13
|
224
|
-
- Gemfile.devise14
|
225
|
-
- Gemfile.devise15
|
226
|
-
- Gemfile.devise20
|
227
|
-
- Gemfile.devise21
|
228
|
-
- Gemfile.devise30
|
229
|
-
- Gemfile.devise42
|
152
|
+
- Gemfile
|
230
153
|
- LICENSE
|
231
154
|
- README.md
|
232
155
|
- Rakefile
|
@@ -236,27 +159,14 @@ files:
|
|
236
159
|
- devise_cas_authenticatable.gemspec
|
237
160
|
- lib/devise_cas_authenticatable.rb
|
238
161
|
- lib/devise_cas_authenticatable/cas_action_url_factory_base.rb
|
239
|
-
- lib/devise_cas_authenticatable/exceptions.rb
|
240
|
-
- lib/devise_cas_authenticatable/memcache_checker.rb
|
241
162
|
- lib/devise_cas_authenticatable/model.rb
|
242
|
-
- lib/devise_cas_authenticatable/railtie.rb
|
243
163
|
- lib/devise_cas_authenticatable/routes.rb
|
244
|
-
- lib/devise_cas_authenticatable/schema.rb
|
245
|
-
- lib/devise_cas_authenticatable/session_store_identifier.rb
|
246
|
-
- lib/devise_cas_authenticatable/single_sign_out.rb
|
247
|
-
- lib/devise_cas_authenticatable/single_sign_out/rack.rb
|
248
|
-
- lib/devise_cas_authenticatable/single_sign_out/strategies.rb
|
249
|
-
- lib/devise_cas_authenticatable/single_sign_out/strategies/base.rb
|
250
|
-
- lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb
|
251
|
-
- lib/devise_cas_authenticatable/single_sign_out/strategies/redis_cache.rb
|
252
|
-
- lib/devise_cas_authenticatable/single_sign_out/warden_failure_app.rb
|
253
164
|
- lib/devise_cas_authenticatable/strategy.rb
|
254
165
|
- rails/init.rb
|
255
|
-
- spec/config_spec.rb
|
256
|
-
- spec/memcache_checker_spec.rb
|
257
166
|
- spec/model_spec.rb
|
258
167
|
- spec/routes_spec.rb
|
259
168
|
- spec/scenario/.gitignore
|
169
|
+
- spec/scenario/app/assets/config/manifest.js
|
260
170
|
- spec/scenario/app/controllers/application_controller.rb
|
261
171
|
- spec/scenario/app/controllers/home_controller.rb
|
262
172
|
- spec/scenario/app/models/user.rb
|
@@ -264,19 +174,16 @@ files:
|
|
264
174
|
- spec/scenario/config.ru
|
265
175
|
- spec/scenario/config/application.rb
|
266
176
|
- spec/scenario/config/boot.rb
|
267
|
-
- spec/scenario/config/castronaut.yml
|
268
177
|
- spec/scenario/config/database.yml
|
269
178
|
- spec/scenario/config/environment.rb
|
270
179
|
- spec/scenario/config/environments/development.rb
|
271
180
|
- spec/scenario/config/environments/production.rb
|
272
181
|
- spec/scenario/config/environments/test.rb
|
273
182
|
- spec/scenario/config/initializers/backtrace_silencers.rb
|
274
|
-
- spec/scenario/config/initializers/castronaut.rb
|
275
183
|
- spec/scenario/config/initializers/devise.rb
|
276
184
|
- spec/scenario/config/initializers/inflections.rb
|
277
185
|
- spec/scenario/config/initializers/mime_types.rb
|
278
186
|
- spec/scenario/config/initializers/secret_token.rb
|
279
|
-
- spec/scenario/config/initializers/session_store.rb
|
280
187
|
- spec/scenario/config/locales/en.yml
|
281
188
|
- spec/scenario/config/routes.rb
|
282
189
|
- spec/scenario/config/rubycas-server.yml
|
@@ -285,12 +192,9 @@ files:
|
|
285
192
|
- spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb
|
286
193
|
- spec/scenario/db/schema.rb
|
287
194
|
- spec/scenario/public/.gitkeep
|
288
|
-
- spec/single_sign_out_spec.rb
|
289
195
|
- spec/spec_helper.rb
|
290
196
|
- spec/strategy_spec.rb
|
291
197
|
- spec/support/migrations.rb
|
292
|
-
- spec/support/urls.rb
|
293
|
-
- spec/warden_failure_app_spec.rb
|
294
198
|
homepage: http://github.com/nbudin/devise_cas_authenticatable
|
295
199
|
licenses:
|
296
200
|
- MIT
|
@@ -310,17 +214,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
310
214
|
- !ruby/object:Gem::Version
|
311
215
|
version: 1.3.1
|
312
216
|
requirements: []
|
313
|
-
|
314
|
-
rubygems_version: 2.6.4
|
217
|
+
rubygems_version: 3.0.3
|
315
218
|
signing_key:
|
316
219
|
specification_version: 4
|
317
220
|
summary: CAS authentication module for Devise
|
318
221
|
test_files:
|
319
|
-
- spec/config_spec.rb
|
320
|
-
- spec/memcache_checker_spec.rb
|
321
222
|
- spec/model_spec.rb
|
322
223
|
- spec/routes_spec.rb
|
323
224
|
- spec/scenario/.gitignore
|
225
|
+
- spec/scenario/app/assets/config/manifest.js
|
324
226
|
- spec/scenario/app/controllers/application_controller.rb
|
325
227
|
- spec/scenario/app/controllers/home_controller.rb
|
326
228
|
- spec/scenario/app/models/user.rb
|
@@ -328,19 +230,16 @@ test_files:
|
|
328
230
|
- spec/scenario/config.ru
|
329
231
|
- spec/scenario/config/application.rb
|
330
232
|
- spec/scenario/config/boot.rb
|
331
|
-
- spec/scenario/config/castronaut.yml
|
332
233
|
- spec/scenario/config/database.yml
|
333
234
|
- spec/scenario/config/environment.rb
|
334
235
|
- spec/scenario/config/environments/development.rb
|
335
236
|
- spec/scenario/config/environments/production.rb
|
336
237
|
- spec/scenario/config/environments/test.rb
|
337
238
|
- spec/scenario/config/initializers/backtrace_silencers.rb
|
338
|
-
- spec/scenario/config/initializers/castronaut.rb
|
339
239
|
- spec/scenario/config/initializers/devise.rb
|
340
240
|
- spec/scenario/config/initializers/inflections.rb
|
341
241
|
- spec/scenario/config/initializers/mime_types.rb
|
342
242
|
- spec/scenario/config/initializers/secret_token.rb
|
343
|
-
- spec/scenario/config/initializers/session_store.rb
|
344
243
|
- spec/scenario/config/locales/en.yml
|
345
244
|
- spec/scenario/config/routes.rb
|
346
245
|
- spec/scenario/config/rubycas-server.yml
|
@@ -349,9 +248,6 @@ test_files:
|
|
349
248
|
- spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb
|
350
249
|
- spec/scenario/db/schema.rb
|
351
250
|
- spec/scenario/public/.gitkeep
|
352
|
-
- spec/single_sign_out_spec.rb
|
353
251
|
- spec/spec_helper.rb
|
354
252
|
- spec/strategy_spec.rb
|
355
253
|
- spec/support/migrations.rb
|
356
|
-
- spec/support/urls.rb
|
357
|
-
- spec/warden_failure_app_spec.rb
|