authn 2.0.1 → 2.4.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.
- data/README.md +1 -3
- data/authn.gemspec +2 -2
- data/lib/authn/config.rb +2 -3
- data/lib/authn/session.rb +1 -1
- data/lib/authn/version.rb +1 -1
- data/lib/authn.rb +1 -0
- data/test/helper.rb +1 -3
- data/test/lib/authn/session_test.rb +21 -20
- data/test/lib/authn/version_test.rb +1 -5
- data/test/lib/authn_test.rb +0 -4
- metadata +6 -6
data/README.md
CHANGED
|
@@ -40,7 +40,6 @@ class Account < ActiveRecord::Base
|
|
|
40
40
|
validates :password, length: 10..1024
|
|
41
41
|
|
|
42
42
|
attr_accessible :email
|
|
43
|
-
attr_accessible :password, :password_confirmation
|
|
44
43
|
end
|
|
45
44
|
```
|
|
46
45
|
|
|
@@ -79,7 +78,7 @@ class Account < ActiveRecord::Base
|
|
|
79
78
|
|
|
80
79
|
has_authentication
|
|
81
80
|
has_password_recovery mailer: PasswordRecoveryMailer
|
|
82
|
-
has_activation mailer: ActivationMailer, on_create: false
|
|
81
|
+
has_activation mailer: "ActivationMailer", on_create: false
|
|
83
82
|
has_login_protection maximum: 3, redirect: { controller: :accounts, action: :maximum_login_failure }
|
|
84
83
|
has_secure_password
|
|
85
84
|
|
|
@@ -87,7 +86,6 @@ class Account < ActiveRecord::Base
|
|
|
87
86
|
validates :password, length: 10..1024
|
|
88
87
|
|
|
89
88
|
attr_accessible :email
|
|
90
|
-
attr_accessible :password, :password_confirmation
|
|
91
89
|
end
|
|
92
90
|
```
|
|
93
91
|
|
data/authn.gemspec
CHANGED
|
@@ -7,10 +7,10 @@ Gem::Specification.new do |gem|
|
|
|
7
7
|
gem.name = "authn"
|
|
8
8
|
gem.version = AuthN::VERSION
|
|
9
9
|
gem.authors = ["Kurtis Rainbolt-Greene"]
|
|
10
|
-
gem.email = ["kurtisrainboltgreene
|
|
10
|
+
gem.email = ["me@kurtisrainboltgreene.name"]
|
|
11
11
|
gem.summary = %q{An incredibly bare bones authentication library}
|
|
12
12
|
gem.description = gem.summary
|
|
13
|
-
gem.homepage = "http://github.com/
|
|
13
|
+
gem.homepage = "http://krainboltgreene.github.com/authn"
|
|
14
14
|
|
|
15
15
|
gem.files = `git ls-files`.split($/)
|
|
16
16
|
gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
|
data/lib/authn/config.rb
CHANGED
|
@@ -3,11 +3,10 @@ module AuthN
|
|
|
3
3
|
@config ||= Config.new Config::DEFAULTS
|
|
4
4
|
end
|
|
5
5
|
|
|
6
|
-
class Config
|
|
7
|
-
include AltStruct::M
|
|
6
|
+
class Config < AltStruct
|
|
8
7
|
DEFAULTS = {
|
|
9
|
-
account_klass: :Account,
|
|
10
8
|
password_digest_method: :password_digest,
|
|
9
|
+
account_klass: "Account",
|
|
11
10
|
login_password_key: :password,
|
|
12
11
|
model_id_method: :id,
|
|
13
12
|
model_critera_method: :where,
|
data/lib/authn/session.rb
CHANGED
|
@@ -21,7 +21,7 @@ module AuthN
|
|
|
21
21
|
end
|
|
22
22
|
|
|
23
23
|
def current_user(klass = AuthN.config.account_klass)
|
|
24
|
-
@current_user ||= get_session klass_as_name klass
|
|
24
|
+
@current_user ||= get_session klass_as_name find_instance_klass klass
|
|
25
25
|
end
|
|
26
26
|
|
|
27
27
|
alias_method :current_account, :current_user
|
data/lib/authn/version.rb
CHANGED
data/lib/authn.rb
CHANGED
data/test/helper.rb
CHANGED
|
@@ -5,39 +5,40 @@ class TestAuthNSession < MiniTest::Unit::TestCase
|
|
|
5
5
|
def setup
|
|
6
6
|
AuthN.config.account_klass = :Account
|
|
7
7
|
Account.password "12341234"
|
|
8
|
-
Controller.
|
|
8
|
+
@controller = Controller.new
|
|
9
|
+
@controller.session = {}
|
|
9
10
|
end
|
|
10
11
|
|
|
11
12
|
# def login(identifiers, password, klass = AuthN.config.account_klass)
|
|
12
13
|
# generate_session_and_instance_from klass.authenticate identifiers, password
|
|
13
14
|
# end
|
|
14
15
|
def test_that_login_returns_account_given_good_credentials
|
|
15
|
-
instance =
|
|
16
|
+
instance = @controller.login email: "kurtis@example.com", password: "12341234"
|
|
16
17
|
actual = instance.class
|
|
17
18
|
expected = Account
|
|
18
19
|
assert_equal expected, actual
|
|
19
20
|
end
|
|
20
21
|
|
|
21
22
|
def test_that_login_returns_false_if_bad_password
|
|
22
|
-
actual =
|
|
23
|
+
actual = @controller.login email: "kurtis@example.com", password: "12341233"
|
|
23
24
|
expected = false
|
|
24
25
|
assert_equal expected, actual
|
|
25
26
|
end
|
|
26
27
|
|
|
27
28
|
def test_that_login_returns_nil_if_no_account_found
|
|
28
|
-
actual =
|
|
29
|
+
actual = @controller.login email: "kurti@example.com", password: "12341234"
|
|
29
30
|
expected = nil
|
|
30
31
|
assert_equal expected, actual
|
|
31
32
|
end
|
|
32
33
|
|
|
33
34
|
def test_that_login_sets_session
|
|
34
|
-
|
|
35
|
-
assert
|
|
35
|
+
@controller.login email: "kurtis@example.com", password: "12341234"
|
|
36
|
+
assert @controller.session[:session_account_id]
|
|
36
37
|
end
|
|
37
38
|
|
|
38
39
|
def test_that_login_stores_session_account_id
|
|
39
|
-
instance =
|
|
40
|
-
actual =
|
|
40
|
+
instance = @controller.login email: "kurtis@example.com", password: "12341234"
|
|
41
|
+
actual = @controller.session[:session_account_id]
|
|
41
42
|
expected = instance.id
|
|
42
43
|
assert_equal expected, actual
|
|
43
44
|
end
|
|
@@ -46,20 +47,20 @@ class TestAuthNSession < MiniTest::Unit::TestCase
|
|
|
46
47
|
# instance_and_session instance
|
|
47
48
|
# end
|
|
48
49
|
def test_that_auto_login_returns_instance
|
|
49
|
-
instance =
|
|
50
|
+
instance = @controller.auto_login Account.new
|
|
50
51
|
actual = instance.class
|
|
51
52
|
expected = Account
|
|
52
53
|
assert_equal expected, actual
|
|
53
54
|
end
|
|
54
55
|
|
|
55
56
|
def test_that_auto_login_sets_session
|
|
56
|
-
|
|
57
|
-
assert
|
|
57
|
+
@controller.auto_login Account.new
|
|
58
|
+
assert @controller.session.has_key? :session_account_id
|
|
58
59
|
end
|
|
59
60
|
|
|
60
61
|
def test_that_auto_login_stores_session_account_id
|
|
61
|
-
instance =
|
|
62
|
-
actual =
|
|
62
|
+
instance = @controller.auto_login Account.new
|
|
63
|
+
actual = @controller.session[:session_account_id]
|
|
63
64
|
expected = instance.id
|
|
64
65
|
assert_equal expected, actual
|
|
65
66
|
end
|
|
@@ -71,15 +72,15 @@ class TestAuthNSession < MiniTest::Unit::TestCase
|
|
|
71
72
|
# end
|
|
72
73
|
|
|
73
74
|
def test_that_logged_in_returns_true_if_logged_in
|
|
74
|
-
|
|
75
|
-
actual =
|
|
75
|
+
@controller.login email: "kurtis@example.com", password: "12341234"
|
|
76
|
+
actual = @controller.logged_in?
|
|
76
77
|
expected = true
|
|
77
78
|
assert_equal expected, actual
|
|
78
79
|
end
|
|
79
80
|
|
|
80
81
|
def test_that_logged_in_returns_false_if_not_logged_in
|
|
81
|
-
|
|
82
|
-
actual =
|
|
82
|
+
@controller.session
|
|
83
|
+
actual = @controller.logged_in?
|
|
83
84
|
expected = false
|
|
84
85
|
assert_equal expected, actual
|
|
85
86
|
end
|
|
@@ -91,8 +92,8 @@ class TestAuthNSession < MiniTest::Unit::TestCase
|
|
|
91
92
|
# end
|
|
92
93
|
|
|
93
94
|
def test_that_logout_empties_the_session
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
refute
|
|
95
|
+
@controller.login email: "kurtis@example.com", password: "12341234"
|
|
96
|
+
@controller.logout
|
|
97
|
+
refute @controller.session.has_key? :session_account_id
|
|
97
98
|
end
|
|
98
99
|
end
|
|
@@ -2,11 +2,7 @@ require 'minitest/autorun'
|
|
|
2
2
|
require_relative '../../helper'
|
|
3
3
|
|
|
4
4
|
class TestAuthNVersion < MiniTest::Unit::TestCase
|
|
5
|
-
def setup
|
|
6
|
-
# Setup logic here
|
|
7
|
-
end
|
|
8
|
-
|
|
9
5
|
def test_that_version_is_latest
|
|
10
|
-
assert_equal "
|
|
6
|
+
assert_equal "2.4.0", AuthN::VERSION
|
|
11
7
|
end
|
|
12
8
|
end
|
data/test/lib/authn_test.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: authn
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.0
|
|
4
|
+
version: 2.4.0
|
|
5
5
|
prerelease:
|
|
6
6
|
platform: ruby
|
|
7
7
|
authors:
|
|
@@ -9,7 +9,7 @@ authors:
|
|
|
9
9
|
autorequire:
|
|
10
10
|
bindir: bin
|
|
11
11
|
cert_chain: []
|
|
12
|
-
date: 2012-09-
|
|
12
|
+
date: 2012-09-03 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
|
14
14
|
- !ruby/object:Gem::Dependency
|
|
15
15
|
name: activemodel
|
|
@@ -93,7 +93,7 @@ dependencies:
|
|
|
93
93
|
version: '0'
|
|
94
94
|
description: An incredibly bare bones authentication library
|
|
95
95
|
email:
|
|
96
|
-
- kurtisrainboltgreene
|
|
96
|
+
- me@kurtisrainboltgreene.name
|
|
97
97
|
executables: []
|
|
98
98
|
extensions: []
|
|
99
99
|
extra_rdoc_files: []
|
|
@@ -118,7 +118,7 @@ files:
|
|
|
118
118
|
- test/lib/authn/session_test.rb
|
|
119
119
|
- test/lib/authn/version_test.rb
|
|
120
120
|
- test/lib/authn_test.rb
|
|
121
|
-
homepage: http://github.com/
|
|
121
|
+
homepage: http://krainboltgreene.github.com/authn
|
|
122
122
|
licenses: []
|
|
123
123
|
post_install_message:
|
|
124
124
|
rdoc_options: []
|
|
@@ -132,7 +132,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
132
132
|
version: '0'
|
|
133
133
|
segments:
|
|
134
134
|
- 0
|
|
135
|
-
hash:
|
|
135
|
+
hash: 2678869267231838865
|
|
136
136
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
137
137
|
none: false
|
|
138
138
|
requirements:
|
|
@@ -141,7 +141,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
141
141
|
version: '0'
|
|
142
142
|
segments:
|
|
143
143
|
- 0
|
|
144
|
-
hash:
|
|
144
|
+
hash: 2678869267231838865
|
|
145
145
|
requirements: []
|
|
146
146
|
rubyforge_project:
|
|
147
147
|
rubygems_version: 1.8.24
|