devise_cas_authenticatable 1.10.4 → 2.0.0.alpha1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +32 -0
  3. data/.gitignore +0 -1
  4. data/CHANGELOG.md +5 -0
  5. data/Gemfile +8 -0
  6. data/README.md +84 -88
  7. data/app/controllers/devise/cas_sessions_controller.rb +23 -67
  8. data/app/views/devise/cas_sessions/unregistered.html.erb +3 -3
  9. data/devise_cas_authenticatable.gemspec +19 -26
  10. data/lib/devise_cas_authenticatable.rb +15 -70
  11. data/lib/devise_cas_authenticatable/model.rb +21 -28
  12. data/lib/devise_cas_authenticatable/routes.rb +22 -44
  13. data/lib/devise_cas_authenticatable/strategy.rb +14 -24
  14. data/spec/model_spec.rb +29 -35
  15. data/spec/routes_spec.rb +26 -26
  16. data/spec/scenario/app/assets/config/manifest.js +0 -0
  17. data/spec/scenario/app/controllers/home_controller.rb +2 -2
  18. data/spec/scenario/app/views/layouts/application.html.erb +1 -3
  19. data/spec/scenario/config/application.rb +1 -27
  20. data/spec/scenario/config/initializers/backtrace_silencers.rb +1 -1
  21. data/spec/scenario/config/initializers/devise.rb +2 -2
  22. data/spec/scenario/config/routes.rb +0 -4
  23. data/spec/scenario/db/migrate/20100401102949_create_tables.rb +3 -3
  24. data/spec/scenario/db/migrate/20111002012903_add_sessions_table.rb +1 -1
  25. data/spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb +1 -1
  26. data/spec/spec_helper.rb +38 -8
  27. data/spec/strategy_spec.rb +43 -82
  28. data/spec/support/migrations.rb +1 -1
  29. metadata +18 -123
  30. data/.travis.yml +0 -45
  31. data/Gemfile.devise12 +0 -11
  32. data/Gemfile.devise13 +0 -11
  33. data/Gemfile.devise14 +0 -11
  34. data/Gemfile.devise15 +0 -11
  35. data/Gemfile.devise20 +0 -11
  36. data/Gemfile.devise21 +0 -13
  37. data/Gemfile.devise30 +0 -12
  38. data/Gemfile.devise42 +0 -13
  39. data/lib/devise_cas_authenticatable/exceptions.rb +0 -10
  40. data/lib/devise_cas_authenticatable/memcache_checker.rb +0 -42
  41. data/lib/devise_cas_authenticatable/railtie.rb +0 -14
  42. data/lib/devise_cas_authenticatable/schema.rb +0 -20
  43. data/lib/devise_cas_authenticatable/session_store_identifier.rb +0 -29
  44. data/lib/devise_cas_authenticatable/single_sign_out.rb +0 -69
  45. data/lib/devise_cas_authenticatable/single_sign_out/rack.rb +0 -39
  46. data/lib/devise_cas_authenticatable/single_sign_out/strategies.rb +0 -58
  47. data/lib/devise_cas_authenticatable/single_sign_out/strategies/base.rb +0 -11
  48. data/lib/devise_cas_authenticatable/single_sign_out/strategies/rails_cache.rb +0 -31
  49. data/lib/devise_cas_authenticatable/single_sign_out/strategies/redis_cache.rb +0 -38
  50. data/lib/devise_cas_authenticatable/single_sign_out/warden_failure_app.rb +0 -46
  51. data/lib/devise_cas_authenticatable/single_sign_out/with_conn.rb +0 -14
  52. data/spec/config_spec.rb +0 -27
  53. data/spec/memcache_checker_spec.rb +0 -49
  54. data/spec/scenario/config/castronaut.yml +0 -32
  55. data/spec/scenario/config/initializers/castronaut.rb +0 -1
  56. data/spec/scenario/config/initializers/session_store.rb +0 -8
  57. data/spec/single_sign_out_spec.rb +0 -51
  58. data/spec/support/urls.rb +0 -19
  59. 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 "routing" do
3
+ describe 'routing' do
4
4
  include RSpec::Rails::RoutingExampleGroup
5
5
 
6
- it "routes to #service" do
7
- get("/users/service").should route_to("devise/cas_sessions#service")
6
+ it 'routes to #service' do
7
+ expect(get('/users/service')).to route_to('devise/cas_sessions#service')
8
8
  end
9
-
10
- it "routes to #new" do
11
- get("/users/sign_in").should route_to("devise/cas_sessions#new")
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 "routes to #create" do
15
- post("/users/sign_in").should route_to("devise/cas_sessions#create")
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 "routes to #destroy" do
19
- get("/users/sign_out").should route_to("devise/cas_sessions#destroy")
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 "routes to #unregistered" do
23
- get("/users/unregistered").should route_to("devise/cas_sessions#unregistered")
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 "should have the right route names" do
31
- controller.should respond_to("user_service_path", "new_user_session_path", "user_session_path", "destroy_user_session_path")
32
- controller.user_service_path.should == "/users/service"
33
- controller.new_user_session_path.should == "/users/sign_in"
34
- controller.user_session_path.should == "/users/sign_in"
35
- controller.destroy_user_session_path.should == "/users/sign_out"
36
- controller.unregistered_user_session_path.should == "/users/unregistered"
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
@@ -1,6 +1,6 @@
1
1
  class HomeController < ApplicationController
2
- before_filter :authenticate_user!
3
-
2
+ before_action :authenticate_user!
3
+
4
4
  def index
5
5
  head(:ok)
6
6
  end
@@ -2,12 +2,10 @@
2
2
  <html>
3
3
  <head>
4
4
  <title>Scenario</title>
5
- <%= stylesheet_link_tag :all %>
6
- <%= javascript_include_tag :defaults %>
7
5
  <%= csrf_meta_tag %>
8
6
  </head>
9
7
  <body>
10
-
8
+
11
9
  <p class="alert"><%= alert %></p>
12
10
  <p class="notice"><%= notice %></p>
13
11
 
@@ -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
- # Rails.backtrace_cleaner.remove_silencers!
7
+ Rails.backtrace_cleaner.remove_silencers!
@@ -1,4 +1,4 @@
1
1
  Devise.setup do |config|
2
2
  require "devise/orm/active_record"
3
- config.timeout_in = 7200
4
- end
3
+ config.timeout_in = 7200.seconds
4
+ end
@@ -1,8 +1,4 @@
1
- require 'castronaut/application'
2
- Castronaut::Application.set(:path, "/cas_server")
3
-
4
1
  Scenario::Application.routes.draw do
5
2
  devise_for :users
6
- mount Castronaut::Application, :at => "/cas_server"
7
3
  root :to => "home#index"
8
4
  end
@@ -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
 
@@ -1,4 +1,4 @@
1
- class AddSessionsTable < ActiveRecord::Migration
1
+ class AddSessionsTable < ActiveRecord::Migration[4.2]
2
2
  def self.up
3
3
  create_table :sessions do |t|
4
4
  t.string :session_id, :null => false
@@ -1,4 +1,4 @@
1
- class AddDeactivatedFlagToUsers < ActiveRecord::Migration
1
+ class AddDeactivatedFlagToUsers < ActiveRecord::Migration[4.2]
2
2
  def self.up
3
3
  add_column :users, :deactivated, :boolean
4
4
  end
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.mock_with :mocha
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
- ShamRack.at('www.example.com') do |env|
17
- request = Rack::Request.new(env)
18
- request.path_info = request.path_info.sub(/^\/cas_server/, '')
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
- Castronaut::Application.call(request.env)
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 }
@@ -1,93 +1,56 @@
1
1
  require 'spec_helper'
2
2
 
3
- describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
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
- Devise.cas_base_url = "http://www.example.com/cas_server"
9
- TestAdapter.reset_valid_users!
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 = "joeuser"
13
+ u.username = 'joeuser'
14
14
  end
15
15
  end
16
16
 
17
17
  after do
18
- visit destroy_user_session_url
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 + "/logout?service"
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 root_url
35
- current_url.should == cas_login_url
36
- fill_in "Username", :with => username
37
- fill_in "Password", :with => password
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 "GET /protected/resource" do
32
+ describe 'GET /protected/resource' do
42
33
  before { get '/' }
43
34
 
44
35
  it 'should redirect to sign-in' do
45
- response.should be_redirect
46
- response.should redirect_to(new_user_session_url)
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 "should sign in with valid user" do
60
- sign_into_cas "joeuser", "joepassword"
61
- current_url.should == root_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 "should register new CAS users if set up to do so" do
83
- User.count.should == 1
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 "newuser", "newpassword"
49
+ sign_into_cas 'newuser', 'newpassword'
87
50
 
88
- current_url.should == root_url
89
- User.count.should == 2
90
- User.find_by_username("newuser").should_not be_nil
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.should == 1
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 "newuser", "newpassword"
66
+ sign_into_cas 'newuser', 'newpassword'
105
67
 
106
- current_url.should == root_url
107
- User.count.should == 2
108
- User.find_by_username("newuser").should_not be_nil
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 "should fail CAS login if user is unregistered and cas_create_user is false" do
117
- User.count.should == 1
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 "newuser", "newpassword"
81
+ sign_into_cas 'newuser', 'newpassword'
121
82
 
122
- current_url.should_not == root_url
123
- User.count.should == 1
124
- User.find_by_username("newuser").should be_nil
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 "sign in using a different account"
127
- fill_in "Username", :with => "joeuser"
128
- fill_in "Password", :with => "joepassword"
129
- click_on "Login"
130
- current_url.should == root_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 "should work correctly with Devise trackable" do
94
+ it 'should work correctly with Devise trackable' do
134
95
  user = User.first
135
- user.update_attributes!(:last_sign_in_at => 1.day.ago, :last_sign_in_ip => "1.2.3.4", :sign_in_count => 41)
136
- sign_into_cas "joeuser", "joepassword"
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.should >= 1.hour.ago
140
- user.sign_in_count.should == 42
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
@@ -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::Migrator.migrate(File.expand_path("../../scenario/db/migrate/", __FILE__))
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: 1.10.4
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: 2019-04-26 00:00:00.000000000 Z
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: 1.2.0
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: 1.2.0
27
+ version: 4.0.0
28
28
  - !ruby/object:Gem::Dependency
29
- name: rubycas-client
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
- - !ruby/object:Gem::Dependency
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: sqlite3
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: sham_rack
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: capybara
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: crypt-isaac
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: launchy
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: timecop
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: pry
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.devise12
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,28 +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
- - lib/devise_cas_authenticatable/single_sign_out/with_conn.rb
254
164
  - lib/devise_cas_authenticatable/strategy.rb
255
165
  - rails/init.rb
256
- - spec/config_spec.rb
257
- - spec/memcache_checker_spec.rb
258
166
  - spec/model_spec.rb
259
167
  - spec/routes_spec.rb
260
168
  - spec/scenario/.gitignore
169
+ - spec/scenario/app/assets/config/manifest.js
261
170
  - spec/scenario/app/controllers/application_controller.rb
262
171
  - spec/scenario/app/controllers/home_controller.rb
263
172
  - spec/scenario/app/models/user.rb
@@ -265,19 +174,16 @@ files:
265
174
  - spec/scenario/config.ru
266
175
  - spec/scenario/config/application.rb
267
176
  - spec/scenario/config/boot.rb
268
- - spec/scenario/config/castronaut.yml
269
177
  - spec/scenario/config/database.yml
270
178
  - spec/scenario/config/environment.rb
271
179
  - spec/scenario/config/environments/development.rb
272
180
  - spec/scenario/config/environments/production.rb
273
181
  - spec/scenario/config/environments/test.rb
274
182
  - spec/scenario/config/initializers/backtrace_silencers.rb
275
- - spec/scenario/config/initializers/castronaut.rb
276
183
  - spec/scenario/config/initializers/devise.rb
277
184
  - spec/scenario/config/initializers/inflections.rb
278
185
  - spec/scenario/config/initializers/mime_types.rb
279
186
  - spec/scenario/config/initializers/secret_token.rb
280
- - spec/scenario/config/initializers/session_store.rb
281
187
  - spec/scenario/config/locales/en.yml
282
188
  - spec/scenario/config/routes.rb
283
189
  - spec/scenario/config/rubycas-server.yml
@@ -286,12 +192,9 @@ files:
286
192
  - spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb
287
193
  - spec/scenario/db/schema.rb
288
194
  - spec/scenario/public/.gitkeep
289
- - spec/single_sign_out_spec.rb
290
195
  - spec/spec_helper.rb
291
196
  - spec/strategy_spec.rb
292
197
  - spec/support/migrations.rb
293
- - spec/support/urls.rb
294
- - spec/warden_failure_app_spec.rb
295
198
  homepage: http://github.com/nbudin/devise_cas_authenticatable
296
199
  licenses:
297
200
  - MIT
@@ -311,17 +214,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
311
214
  - !ruby/object:Gem::Version
312
215
  version: 1.3.1
313
216
  requirements: []
314
- rubyforge_project:
315
- rubygems_version: 2.7.6
217
+ rubygems_version: 3.0.3
316
218
  signing_key:
317
219
  specification_version: 4
318
220
  summary: CAS authentication module for Devise
319
221
  test_files:
320
- - spec/config_spec.rb
321
- - spec/memcache_checker_spec.rb
322
222
  - spec/model_spec.rb
323
223
  - spec/routes_spec.rb
324
224
  - spec/scenario/.gitignore
225
+ - spec/scenario/app/assets/config/manifest.js
325
226
  - spec/scenario/app/controllers/application_controller.rb
326
227
  - spec/scenario/app/controllers/home_controller.rb
327
228
  - spec/scenario/app/models/user.rb
@@ -329,19 +230,16 @@ test_files:
329
230
  - spec/scenario/config.ru
330
231
  - spec/scenario/config/application.rb
331
232
  - spec/scenario/config/boot.rb
332
- - spec/scenario/config/castronaut.yml
333
233
  - spec/scenario/config/database.yml
334
234
  - spec/scenario/config/environment.rb
335
235
  - spec/scenario/config/environments/development.rb
336
236
  - spec/scenario/config/environments/production.rb
337
237
  - spec/scenario/config/environments/test.rb
338
238
  - spec/scenario/config/initializers/backtrace_silencers.rb
339
- - spec/scenario/config/initializers/castronaut.rb
340
239
  - spec/scenario/config/initializers/devise.rb
341
240
  - spec/scenario/config/initializers/inflections.rb
342
241
  - spec/scenario/config/initializers/mime_types.rb
343
242
  - spec/scenario/config/initializers/secret_token.rb
344
- - spec/scenario/config/initializers/session_store.rb
345
243
  - spec/scenario/config/locales/en.yml
346
244
  - spec/scenario/config/routes.rb
347
245
  - spec/scenario/config/rubycas-server.yml
@@ -350,9 +248,6 @@ test_files:
350
248
  - spec/scenario/db/migrate/20121009092400_add_deactivated_flag_to_users.rb
351
249
  - spec/scenario/db/schema.rb
352
250
  - spec/scenario/public/.gitkeep
353
- - spec/single_sign_out_spec.rb
354
251
  - spec/spec_helper.rb
355
252
  - spec/strategy_spec.rb
356
253
  - spec/support/migrations.rb
357
- - spec/support/urls.rb
358
- - spec/warden_failure_app_spec.rb