sinatra-security 0.1.0 → 0.1.1
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.markdown +45 -0
- data/VERSION +1 -1
- data/examples/classic.rb +46 -0
- data/examples/views/home.haml +4 -0
- data/examples/views/login.haml +10 -0
- data/lib/sinatra/security/helpers.rb +4 -0
- data/sinatra-security.gemspec +8 -4
- data/test/test_sinatra_security_helpers.rb +9 -0
- metadata +8 -4
- data/README.rdoc +0 -17
data/README.markdown
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
Sinatra Security
|
2
|
+
================
|
3
|
+
|
4
|
+
This gem just provides you with the standard authentication mechanisms you would expect from your typical app.
|
5
|
+
|
6
|
+
How to use
|
7
|
+
==========
|
8
|
+
|
9
|
+
# in your terminal
|
10
|
+
[sudo] gem install sinatra-security
|
11
|
+
|
12
|
+
# in your sinatra app
|
13
|
+
require 'sinatra'
|
14
|
+
require 'sinatra/security'
|
15
|
+
|
16
|
+
get "/public" do
|
17
|
+
"Hello public world"
|
18
|
+
end
|
19
|
+
|
20
|
+
get "/private" do
|
21
|
+
login_required
|
22
|
+
|
23
|
+
"Hello private world"
|
24
|
+
end
|
25
|
+
|
26
|
+
get "/login" do
|
27
|
+
@user = User.new
|
28
|
+
|
29
|
+
haml :login
|
30
|
+
end
|
31
|
+
|
32
|
+
Note on Patches/Pull Requests
|
33
|
+
-----------------------------
|
34
|
+
|
35
|
+
* Fork the project.
|
36
|
+
* Make your feature addition or bug fix.
|
37
|
+
* Add tests for it. This is important so I don't break it in a
|
38
|
+
future version unintentionally.
|
39
|
+
* Commit, do not mess with rakefile, version, or history.
|
40
|
+
(if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
|
41
|
+
* Send me a pull request. Bonus points for topic branches.
|
42
|
+
|
43
|
+
Copyright
|
44
|
+
---------
|
45
|
+
Copyright (c) 2010 Cyril David. See LICENSE for details.
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.1
|
data/examples/classic.rb
ADDED
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'sinatra'
|
2
|
+
require 'sinatra/security'
|
3
|
+
|
4
|
+
class User
|
5
|
+
attr :id
|
6
|
+
|
7
|
+
def self.authenticate(user, pass)
|
8
|
+
User.new(42) if [ user, pass ] == [ 'quentin', 'test' ]
|
9
|
+
end
|
10
|
+
|
11
|
+
def self.[](id)
|
12
|
+
User.new(id)
|
13
|
+
end
|
14
|
+
|
15
|
+
def initialize(id = nil)
|
16
|
+
@id = id
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
use Rack::Session::Cookie
|
21
|
+
|
22
|
+
get "/" do
|
23
|
+
haml :home
|
24
|
+
end
|
25
|
+
|
26
|
+
get "/public" do
|
27
|
+
"Hello public world"
|
28
|
+
end
|
29
|
+
|
30
|
+
get "/private" do
|
31
|
+
require_login
|
32
|
+
|
33
|
+
"Hello private world <a href='/logout'>Logout</a>"
|
34
|
+
end
|
35
|
+
|
36
|
+
get "/login" do
|
37
|
+
@user = User.new
|
38
|
+
|
39
|
+
haml :login
|
40
|
+
end
|
41
|
+
|
42
|
+
get "/logout" do
|
43
|
+
logout!
|
44
|
+
|
45
|
+
redirect '/'
|
46
|
+
end
|
data/sinatra-security.gemspec
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{sinatra-security}
|
8
|
-
s.version = "0.1.
|
8
|
+
s.version = "0.1.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Cyril David"]
|
@@ -14,15 +14,18 @@ Gem::Specification.new do |s|
|
|
14
14
|
s.email = %q{cyx.ucron@gmail.com}
|
15
15
|
s.extra_rdoc_files = [
|
16
16
|
"LICENSE",
|
17
|
-
"README.
|
17
|
+
"README.markdown"
|
18
18
|
]
|
19
19
|
s.files = [
|
20
20
|
".document",
|
21
21
|
".gitignore",
|
22
22
|
"LICENSE",
|
23
|
-
"README.
|
23
|
+
"README.markdown",
|
24
24
|
"Rakefile",
|
25
25
|
"VERSION",
|
26
|
+
"examples/classic.rb",
|
27
|
+
"examples/views/home.haml",
|
28
|
+
"examples/views/login.haml",
|
26
29
|
"lib/sinatra/security.rb",
|
27
30
|
"lib/sinatra/security/helpers.rb",
|
28
31
|
"sinatra-security.gemspec",
|
@@ -39,7 +42,8 @@ Gem::Specification.new do |s|
|
|
39
42
|
s.test_files = [
|
40
43
|
"test/helper.rb",
|
41
44
|
"test/test_sinatra-security.rb",
|
42
|
-
"test/test_sinatra_security_helpers.rb"
|
45
|
+
"test/test_sinatra_security_helpers.rb",
|
46
|
+
"examples/classic.rb"
|
43
47
|
]
|
44
48
|
|
45
49
|
if s.respond_to? :specification_version then
|
@@ -110,4 +110,13 @@ class TestSinatraSecurityHelpers < Test::Unit::TestCase
|
|
110
110
|
end
|
111
111
|
end
|
112
112
|
end
|
113
|
+
|
114
|
+
describe "#logout" do
|
115
|
+
should "set the remove the session[:user]" do
|
116
|
+
@context.session[:user] = 1
|
117
|
+
@context.logout!
|
118
|
+
|
119
|
+
assert ! @context.session[:user]
|
120
|
+
end
|
121
|
+
end
|
113
122
|
end
|
metadata
CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 0
|
7
7
|
- 1
|
8
|
-
-
|
9
|
-
version: 0.1.
|
8
|
+
- 1
|
9
|
+
version: 0.1.1
|
10
10
|
platform: ruby
|
11
11
|
authors:
|
12
12
|
- Cyril David
|
@@ -26,14 +26,17 @@ extensions: []
|
|
26
26
|
|
27
27
|
extra_rdoc_files:
|
28
28
|
- LICENSE
|
29
|
-
- README.
|
29
|
+
- README.markdown
|
30
30
|
files:
|
31
31
|
- .document
|
32
32
|
- .gitignore
|
33
33
|
- LICENSE
|
34
|
-
- README.
|
34
|
+
- README.markdown
|
35
35
|
- Rakefile
|
36
36
|
- VERSION
|
37
|
+
- examples/classic.rb
|
38
|
+
- examples/views/home.haml
|
39
|
+
- examples/views/login.haml
|
37
40
|
- lib/sinatra/security.rb
|
38
41
|
- lib/sinatra/security/helpers.rb
|
39
42
|
- sinatra-security.gemspec
|
@@ -75,3 +78,4 @@ test_files:
|
|
75
78
|
- test/helper.rb
|
76
79
|
- test/test_sinatra-security.rb
|
77
80
|
- test/test_sinatra_security_helpers.rb
|
81
|
+
- examples/classic.rb
|
data/README.rdoc
DELETED
@@ -1,17 +0,0 @@
|
|
1
|
-
= sinatra-security
|
2
|
-
|
3
|
-
Description goes here.
|
4
|
-
|
5
|
-
== Note on Patches/Pull Requests
|
6
|
-
|
7
|
-
* Fork the project.
|
8
|
-
* Make your feature addition or bug fix.
|
9
|
-
* Add tests for it. This is important so I don't break it in a
|
10
|
-
future version unintentionally.
|
11
|
-
* Commit, do not mess with rakefile, version, or history.
|
12
|
-
(if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
|
13
|
-
* Send me a pull request. Bonus points for topic branches.
|
14
|
-
|
15
|
-
== Copyright
|
16
|
-
|
17
|
-
Copyright (c) 2010 Cyril David. See LICENSE for details.
|