rspec-check-auth 0.5.1 → 0.5.2
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/CHANGELOG +2 -1
- data/README.md +5 -1
- data/VERSION +1 -1
- data/lib/rspec_check_auth/check_auth/request.rb +27 -8
- data/rspec-check-auth.gemspec +6 -4
- data/spec/lib/request_spec.rb +43 -0
- data/spec/{rspec_check_auth_spec.rb → lib/rspec_check_auth_spec.rb} +1 -1
- metadata +8 -6
data/CHANGELOG
CHANGED
data/README.md
CHANGED
@@ -55,7 +55,11 @@ By default it tests via HTMl and XML, but adding more or less formats is no issu
|
|
55
55
|
c.parent_info :format => [:html, :json]
|
56
56
|
end
|
57
57
|
|
58
|
-
Only want some of the usual crowd? No problem, just pass the `:
|
58
|
+
Only want some of the usual crowd? No problem, just pass the `:only` param and `resource_actions` will only include those specified.
|
59
|
+
|
60
|
+
check_auth_for {|c| c.resource_actions :only => [:new, :create, :edit, :update] }
|
61
|
+
|
62
|
+
And if you don't want some, but want everything else? Pass `:except` and those specified will be left out.
|
59
63
|
|
60
64
|
check_auth_for {|c| c.resource_actions :except => [:new, :create, :edit, :update] }
|
61
65
|
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.5.
|
1
|
+
0.5.2
|
@@ -5,18 +5,26 @@ class CheckAuth
|
|
5
5
|
class Request
|
6
6
|
attr_reader :action, :method, :params, :format
|
7
7
|
|
8
|
-
def initialize action, format,
|
8
|
+
def initialize action, format, opts
|
9
9
|
@action = action
|
10
10
|
@format = format
|
11
|
-
@method =
|
12
|
-
|
11
|
+
@method = opts[:method] || default_method
|
12
|
+
self.params = opts.except(:method)
|
13
13
|
end
|
14
14
|
|
15
|
-
#
|
16
|
-
#
|
17
|
-
|
18
|
-
|
19
|
-
|
15
|
+
# Sets up the params hash
|
16
|
+
#
|
17
|
+
# Adds :format => self.format if self.format != :html
|
18
|
+
# Merges any passed params into default params for this action
|
19
|
+
#
|
20
|
+
def params= param_hash
|
21
|
+
@params = default_params.merge(param_hash)
|
22
|
+
|
23
|
+
if @format == :html
|
24
|
+
@params.delete(:format)
|
25
|
+
else
|
26
|
+
@params.merge!(:format => format.to_s)
|
27
|
+
end
|
20
28
|
end
|
21
29
|
|
22
30
|
# Works out the default method
|
@@ -33,5 +41,16 @@ class CheckAuth
|
|
33
41
|
:get
|
34
42
|
end
|
35
43
|
end
|
44
|
+
|
45
|
+
# Adds an id for actions that require it
|
46
|
+
def default_params
|
47
|
+
case @action.to_s
|
48
|
+
when /(show|edit|update|destroy)/
|
49
|
+
{:id => "some_id"}
|
50
|
+
else
|
51
|
+
{}
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
36
55
|
end
|
37
56
|
end
|
data/rspec-check-auth.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = %q{rspec-check-auth}
|
8
|
-
s.version = "0.5.
|
8
|
+
s.version = "0.5.2"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Caius Durling"]
|
12
|
-
s.date = %q{2010-
|
12
|
+
s.date = %q{2010-07-02}
|
13
13
|
s.description = %q{Quickly check your rails controller actions require authentication}
|
14
14
|
s.email = %q{hello@brightbox.co.uk}
|
15
15
|
s.extra_rdoc_files = [
|
@@ -30,7 +30,8 @@ Gem::Specification.new do |s|
|
|
30
30
|
"lib/rspec_check_auth/extend_hash.rb",
|
31
31
|
"lib/rspec_check_auth/extend_object.rb",
|
32
32
|
"rspec-check-auth.gemspec",
|
33
|
-
"spec/
|
33
|
+
"spec/lib/request_spec.rb",
|
34
|
+
"spec/lib/rspec_check_auth_spec.rb",
|
34
35
|
"spec/spec.opts",
|
35
36
|
"spec/spec_helper.rb"
|
36
37
|
]
|
@@ -40,7 +41,8 @@ Gem::Specification.new do |s|
|
|
40
41
|
s.rubygems_version = %q{1.3.7}
|
41
42
|
s.summary = %q{Quickly check your rails controller actions require authentication}
|
42
43
|
s.test_files = [
|
43
|
-
"spec/
|
44
|
+
"spec/lib/request_spec.rb",
|
45
|
+
"spec/lib/rspec_check_auth_spec.rb",
|
44
46
|
"spec/spec_helper.rb"
|
45
47
|
]
|
46
48
|
|
@@ -0,0 +1,43 @@
|
|
1
|
+
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
|
+
|
3
|
+
describe CheckAuth::Request do
|
4
|
+
|
5
|
+
it "should create a valid instance" do
|
6
|
+
CheckAuth::Request.new(:index, :html, {}).should_not be_nil
|
7
|
+
end
|
8
|
+
|
9
|
+
it "should have default params when not overridden" do
|
10
|
+
r = CheckAuth::Request.new(:update, :html, {})
|
11
|
+
r.params.should == {:id => "some_id"}
|
12
|
+
end
|
13
|
+
|
14
|
+
it "should have a default id for show, edit, update, destroy actions" do
|
15
|
+
[:show, :edit, :update, :destroy].each do |action|
|
16
|
+
r = CheckAuth::Request.new(action, :html, {})
|
17
|
+
r.params.should == {:id => "some_id"}
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
it "should have no default params for index, new, create" do
|
22
|
+
[:index, :new, :create].each do |action|
|
23
|
+
r = CheckAuth::Request.new(action, :html, {})
|
24
|
+
r.params.should == {}
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should override default params with custom ones" do
|
29
|
+
r = CheckAuth::Request.new(:update, :html, {:id => "blah blah"})
|
30
|
+
r.params.should == {:id => "blah blah"}
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should not include :format in the params when format is html" do
|
34
|
+
r = CheckAuth::Request.new(nil, :html, {})
|
35
|
+
r.params.should == {}
|
36
|
+
end
|
37
|
+
|
38
|
+
it "should include :format in the params when format is not html" do
|
39
|
+
r = CheckAuth::Request.new(nil, :xml, {})
|
40
|
+
r.params.should == {:format => "xml"}
|
41
|
+
end
|
42
|
+
|
43
|
+
end
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rspec-check-auth
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 15
|
5
5
|
prerelease: false
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 5
|
9
|
-
-
|
10
|
-
version: 0.5.
|
9
|
+
- 2
|
10
|
+
version: 0.5.2
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Caius Durling
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2010-
|
18
|
+
date: 2010-07-02 00:00:00 +01:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -55,7 +55,8 @@ files:
|
|
55
55
|
- lib/rspec_check_auth/extend_hash.rb
|
56
56
|
- lib/rspec_check_auth/extend_object.rb
|
57
57
|
- rspec-check-auth.gemspec
|
58
|
-
- spec/
|
58
|
+
- spec/lib/request_spec.rb
|
59
|
+
- spec/lib/rspec_check_auth_spec.rb
|
59
60
|
- spec/spec.opts
|
60
61
|
- spec/spec_helper.rb
|
61
62
|
has_rdoc: true
|
@@ -93,5 +94,6 @@ signing_key:
|
|
93
94
|
specification_version: 3
|
94
95
|
summary: Quickly check your rails controller actions require authentication
|
95
96
|
test_files:
|
96
|
-
- spec/
|
97
|
+
- spec/lib/request_spec.rb
|
98
|
+
- spec/lib/rspec_check_auth_spec.rb
|
97
99
|
- spec/spec_helper.rb
|