devise_cas_authenticatable 1.8.0 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 4e7a21d56c086e07750dfdf7e6ad8759233919ae
4
- data.tar.gz: 3a9d7c28cf8889001a89e3f4eb5cdb46439b42e9
3
+ metadata.gz: e218be1e32158092b12200997cd9766d7bd44dc9
4
+ data.tar.gz: 06134730c16d3512594ee8d7958f0d8af8e9ad95
5
5
  SHA512:
6
- metadata.gz: ba4cffad023fd9a1507c20f2a4145e4575f8173232e3aab9784f3c258082c6f1a82371f9f2ad300be5bbe3e491a7e97350bed01aff273a0ab0178673fd78ec61
7
- data.tar.gz: 9512c05944ed91ae97221ba2f3ce22a89ee12384cd04c6a87e139cf203d9d1e132c8de754124e326dd11c327d8e62188543c092bf76372cedf95bf4be0c7ca2e
6
+ metadata.gz: 72cbc90c0c374573af01d0021a5ba0be3aa612fcb4493da084c56d8bb6c0469ef65d4ffb2055a508081bcd2f8086c8461f6662a935f68f1f36e47b36068eca4e
7
+ data.tar.gz: 3419752f94b6f9e5d44f3b51ded704c0da466c619109b267c76d9c527a2a7736ef9885829e9308f520884833870d45b7c8cadfe321145dafd3ef32c68698f7e8
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Changelog for devise\_cas\_authenticatable
2
2
 
3
+ ## Version 1.9.0 - May 10, 2016
4
+
5
+ * No longer requires net/telnet in order to work properly, so Ruby 2.3 can work out-of-the-box
6
+
3
7
  ## Version 1.8.0 - May 4, 2016
4
8
 
5
9
  * May the 4th be with you!
data/Gemfile ADDED
@@ -0,0 +1 @@
1
+ Gemfile.devise21
@@ -2,7 +2,7 @@
2
2
 
3
3
  Gem::Specification.new do |s|
4
4
  s.name = %q{devise_cas_authenticatable}
5
- s.version = "1.8.0"
5
+ s.version = "1.9.0"
6
6
 
7
7
  s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
8
8
  s.authors = ["Nat Budin", "Jeremy Haile"]
@@ -1,4 +1,5 @@
1
- require 'net/telnet'
1
+ require 'socket'
2
+ require 'timeout'
2
3
 
3
4
  module DeviseCasAuthenticatable
4
5
  class MemcacheChecker
@@ -17,14 +18,21 @@ module DeviseCasAuthenticatable
17
18
  memcache_servers.each do |server|
18
19
  host, port = server.split(":")
19
20
  begin
20
- Net::Telnet.new("Host" => host, "Port" => port, "Timeout" => 1)
21
+ try_connect host, port
22
+
21
23
  return true
22
- rescue Errno::ECONNREFUSED
24
+ rescue Errno::ECONNREFUSED, Timeout::Error
23
25
  return false
24
26
  end
25
27
  end
26
28
  end
27
29
 
30
+ def try_connect(host, port)
31
+ Timeout::timeout(1) do
32
+ TCPSocket.open(host, port)
33
+ end
34
+ end
35
+
28
36
  private
29
37
 
30
38
  def session_store_class
@@ -37,7 +37,7 @@ describe DeviseCasAuthenticatable::MemcacheChecker do
37
37
  subject(:alive?) { described_class.new(conf_double).alive? }
38
38
 
39
39
  before do
40
- Net::Telnet.stubs(:new)
40
+ DeviseCasAuthenticatable::MemcacheChecker.any_instance.stubs(:try_connect)
41
41
  end
42
42
 
43
43
  it { expect(alive?).to eq true }
@@ -3,8 +3,8 @@ require 'spec_helper'
3
3
  describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
4
4
  include RSpec::Rails::RequestExampleGroup
5
5
  include Capybara::DSL
6
-
7
- before do
6
+
7
+ before do
8
8
  Devise.cas_base_url = "http://www.example.com/cas_server"
9
9
  TestAdapter.reset_valid_users!
10
10
 
@@ -13,11 +13,11 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
13
13
  u.username = "joeuser"
14
14
  end
15
15
  end
16
-
16
+
17
17
  after do
18
18
  visit destroy_user_session_url
19
19
  end
20
-
20
+
21
21
  def cas_login_url
22
22
  @cas_login_url ||= begin
23
23
  uri = URI.parse(Devise.cas_base_url + "/login")
@@ -25,11 +25,11 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
25
25
  uri.to_s
26
26
  end
27
27
  end
28
-
28
+
29
29
  def cas_logout_url
30
30
  @cas_logout_url ||= Devise.cas_base_url + "/logout?service"
31
31
  end
32
-
32
+
33
33
  def sign_into_cas(username, password)
34
34
  visit root_url
35
35
  current_url.should == cas_login_url
@@ -37,7 +37,7 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
37
37
  fill_in "Password", :with => password
38
38
  click_on "Login"
39
39
  end
40
-
40
+
41
41
  describe "GET /protected/resource" do
42
42
  before { get '/' }
43
43
 
@@ -46,28 +46,28 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
46
46
  response.should redirect_to(new_user_session_url)
47
47
  end
48
48
  end
49
-
49
+
50
50
  describe "GET /users/sign_in" do
51
51
  before { get new_user_session_url }
52
-
52
+
53
53
  it 'should redirect to CAS server' do
54
54
  response.should be_redirect
55
55
  response.should redirect_to(cas_login_url)
56
56
  end
57
57
  end
58
-
58
+
59
59
  it "should sign in with valid user" do
60
60
  sign_into_cas "joeuser", "joepassword"
61
61
  current_url.should == root_url
62
62
  end
63
-
63
+
64
64
  it "should fail to sign in with an invalid user" do
65
65
  sign_into_cas "invaliduser", "invalidpassword"
66
66
  current_url.should_not == root_url
67
67
  end
68
68
 
69
69
  describe "with a deactivated user" do
70
- before do
70
+ before do
71
71
  @user = User.first
72
72
  @user.deactivated = true
73
73
  @user.save!
@@ -78,13 +78,13 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
78
78
  current_url.should == cas_logout_url
79
79
  end
80
80
  end
81
-
81
+
82
82
  it "should register new CAS users if set up to do so" do
83
83
  User.count.should == 1
84
84
  TestAdapter.register_valid_user("newuser", "newpassword")
85
85
  Devise.cas_create_user = true
86
86
  sign_into_cas "newuser", "newpassword"
87
-
87
+
88
88
  current_url.should == root_url
89
89
  User.count.should == 2
90
90
  User.find_by_username("newuser").should_not be_nil
@@ -102,7 +102,7 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
102
102
  TestAdapter.register_valid_user("newuser", "newpassword")
103
103
  Devise.cas_create_user = false
104
104
  sign_into_cas "newuser", "newpassword"
105
-
105
+
106
106
  current_url.should == root_url
107
107
  User.count.should == 2
108
108
  User.find_by_username("newuser").should_not be_nil
@@ -112,13 +112,13 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
112
112
  end
113
113
  end
114
114
  end
115
-
115
+
116
116
  it "should fail CAS login if user is unregistered and cas_create_user is false" do
117
117
  User.count.should == 1
118
118
  TestAdapter.register_valid_user("newuser", "newpassword")
119
119
  Devise.cas_create_user = false
120
120
  sign_into_cas "newuser", "newpassword"
121
-
121
+
122
122
  current_url.should_not == root_url
123
123
  User.count.should == 1
124
124
  User.find_by_username("newuser").should be_nil
@@ -129,12 +129,12 @@ describe Devise::Strategies::CasAuthenticatable, :type => "acceptance" do
129
129
  click_on "Login"
130
130
  current_url.should == root_url
131
131
  end
132
-
132
+
133
133
  it "should work correctly with Devise trackable" do
134
134
  user = User.first
135
135
  user.update_attributes!(:last_sign_in_at => 1.day.ago, :last_sign_in_ip => "1.2.3.4", :sign_in_count => 41)
136
136
  sign_into_cas "joeuser", "joepassword"
137
-
137
+
138
138
  user.reload
139
139
  user.last_sign_in_at.should >= 1.hour.ago
140
140
  user.sign_in_count.should == 42
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.8.0
4
+ version: 1.9.0
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: 2016-05-04 00:00:00.000000000 Z
12
+ date: 2016-05-10 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: devise
@@ -310,7 +310,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
310
310
  version: 1.3.1
311
311
  requirements: []
312
312
  rubyforge_project:
313
- rubygems_version: 2.4.5.1
313
+ rubygems_version: 2.6.4
314
314
  signing_key:
315
315
  specification_version: 4
316
316
  summary: CAS authentication module for Devise
data/Gemfile DELETED
@@ -1,13 +0,0 @@
1
- source "http://rubygems.org"
2
-
3
- # Specify your gem's dependencies in devise_cas_authenticatable.gemspec
4
- gemspec
5
-
6
- gem 'rails', '~> 3.2.0'
7
- gem 'devise', '~> 2.1.0'
8
-
9
- group :test do
10
- gem 'castronaut', :git => 'https://github.com/nbudin/castronaut.git', :branch => 'dam5s-merge'
11
- gem 'minitest'
12
- gem 'test-unit'
13
- end