simplest_auth 0.1.3 → 0.2.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.textile
CHANGED
@@ -4,6 +4,15 @@ simplest_auth is a gem to be used with Rails applications where RESTful Authenti
|
|
4
4
|
|
5
5
|
simplest_auth is now compatible with both ActiveRecord and DataMapper (the README displays examples for AR)
|
6
6
|
|
7
|
+
h2. Changes!
|
8
|
+
|
9
|
+
Version 0.2.0 has a change to handle multiple Model session keys. If you are using User as your model class then you shouldn't have a problem. However, if you're using another
|
10
|
+
class, you will either need to override the <pre><code>session_key</code></pre> method to return <pre><code>:user_id</code></pre> or just accept that a few sessions will be lost.
|
11
|
+
|
12
|
+
If you don't care about losing sessions, just go ahead and ignore this message.
|
13
|
+
|
14
|
+
If you use this gem in Rails (like most, I suspect), the session_key method will return the model class underscored plus "_id" as a symbol. Otherwise, it's just #downcased (lame).
|
15
|
+
|
7
16
|
h2. Installation
|
8
17
|
|
9
18
|
SimplestAuth depends (for now) on the BCrypt gem, so install that first:
|
data/lib/simplest_auth/model.rb
CHANGED
@@ -55,12 +55,20 @@ module SimplestAuth
|
|
55
55
|
EOM
|
56
56
|
end
|
57
57
|
end
|
58
|
+
|
59
|
+
def session_key
|
60
|
+
if name.to_s.respond_to?(:underscore)
|
61
|
+
"#{name.underscore}_id".to_sym
|
62
|
+
else
|
63
|
+
"#{name.downcase}_id".to_sym
|
64
|
+
end
|
65
|
+
end
|
58
66
|
end
|
59
67
|
|
60
68
|
module InstanceMethods
|
61
69
|
include BCrypt
|
62
70
|
|
63
|
-
RecordNotFound = Class.new(StandardError)
|
71
|
+
RecordNotFound = Class.new(StandardError) unless defined?(RecordNotFound)
|
64
72
|
|
65
73
|
def authentic?(password)
|
66
74
|
Password.new(self.crypted_password) == password
|
@@ -146,6 +146,11 @@ class ControllerTest < Test::Unit::TestCase
|
|
146
146
|
|
147
147
|
assert_equal "user", current_user
|
148
148
|
end
|
149
|
+
|
150
|
+
should "adapt the session key for the user class" do
|
151
|
+
stubs(:user_class).returns(mock(:session_key => :user_id))
|
152
|
+
assert_equal :user_id, session_key
|
153
|
+
end
|
149
154
|
end
|
150
155
|
|
151
156
|
end
|
@@ -17,7 +17,13 @@ class UserTest < Test::Unit::TestCase
|
|
17
17
|
end
|
18
18
|
end
|
19
19
|
|
20
|
-
context "
|
20
|
+
context "The User class" do
|
21
|
+
should "define a session key" do
|
22
|
+
assert_equal :user_id, User.session_key
|
23
|
+
end
|
24
|
+
end
|
25
|
+
|
26
|
+
context "An instance of the User class" do
|
21
27
|
setup do
|
22
28
|
User.send(:include, SimplestAuth::Model)
|
23
29
|
@user = User.new
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: simplest_auth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.2.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tony Pitale
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-07-07 00:00:00 -04:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -33,7 +33,6 @@ extra_rdoc_files: []
|
|
33
33
|
files:
|
34
34
|
- README.textile
|
35
35
|
- Rakefile
|
36
|
-
- lib/simplest_auth
|
37
36
|
- lib/simplest_auth/controller.rb
|
38
37
|
- lib/simplest_auth/model.rb
|
39
38
|
- lib/simplest_auth/version.rb
|
@@ -42,8 +41,10 @@ files:
|
|
42
41
|
- test/unit/simplest_auth/controller_test.rb
|
43
42
|
- test/unit/simplest_auth/dm_model_test.rb
|
44
43
|
- test/unit/simplest_auth/model_test.rb
|
45
|
-
has_rdoc:
|
44
|
+
has_rdoc: true
|
46
45
|
homepage: http://viget.com/extend
|
46
|
+
licenses: []
|
47
|
+
|
47
48
|
post_install_message:
|
48
49
|
rdoc_options: []
|
49
50
|
|
@@ -64,9 +65,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
64
65
|
requirements: []
|
65
66
|
|
66
67
|
rubyforge_project:
|
67
|
-
rubygems_version: 1.3.
|
68
|
+
rubygems_version: 1.3.4
|
68
69
|
signing_key:
|
69
|
-
specification_version:
|
70
|
+
specification_version: 3
|
70
71
|
summary: Simple implementation of authentication for Rails
|
71
72
|
test_files:
|
72
73
|
- test/unit/simplest_auth/ar_model_test.rb
|