access_schema 0.3.3 → 0.3.4
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/lib/access_schema/schema.rb
CHANGED
@@ -24,7 +24,7 @@ module AccessSchema
|
|
24
24
|
|
25
25
|
def allow?(*args)
|
26
26
|
require!(*args)
|
27
|
-
rescue
|
27
|
+
rescue NotAllowedError => e
|
28
28
|
false
|
29
29
|
else
|
30
30
|
true
|
@@ -71,20 +71,18 @@ module AccessSchema
|
|
71
71
|
|
72
72
|
raise NoPrivilegeError.new(:privilege => element_name.to_sym) unless existent_element
|
73
73
|
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
"options = '#{options.inspect}'"
|
80
|
-
].join(', ')
|
74
|
+
log_payload = {
|
75
|
+
:resource => namespace_name,
|
76
|
+
:privilege => element_name,
|
77
|
+
:roles => roles,
|
78
|
+
:options => options
|
81
79
|
}
|
82
80
|
|
83
81
|
unless allowed
|
84
|
-
logger.info{ "check FAILED: #{
|
85
|
-
raise
|
82
|
+
logger.info{ "check FAILED: #{log_payload.inspect}" }
|
83
|
+
raise NotAllowedError.new(log_payload)
|
86
84
|
else
|
87
|
-
logger.debug{ "check PASSED: #{
|
85
|
+
logger.debug{ "check PASSED: #{log_payload.inspect}" }
|
88
86
|
true
|
89
87
|
end
|
90
88
|
|
@@ -64,13 +64,13 @@ describe AccessSchema::Schema, "errors rising" do
|
|
64
64
|
it "logs check arguments with debug level" do
|
65
65
|
@logger.log_only_level = "debug"
|
66
66
|
@schema.allow? "Review", :mark_featured, :flower
|
67
|
-
@logger.output.should == "AccessSchema: check PASSED:
|
67
|
+
@logger.output.should == "AccessSchema: check PASSED: {:resource=>:Review, :privilege=>:mark_featured, :roles=>[:flower], :options=>{}}"
|
68
68
|
end
|
69
69
|
|
70
70
|
it "logs check fail with info level" do
|
71
71
|
@logger.log_only_level = "info"
|
72
72
|
@schema.allow? "Review", :mark_featured, :none
|
73
|
-
@logger.output.should == "AccessSchema: check FAILED:
|
73
|
+
@logger.output.should == "AccessSchema: check FAILED: {:resource=>:Review, :privilege=>:mark_featured, :roles=>[:none], :options=>{}}"
|
74
74
|
end
|
75
75
|
end
|
76
76
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: access_schema
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.4
|
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-03-
|
12
|
+
date: 2012-03-23 00:00:00.000000000 Z
|
13
13
|
dependencies: []
|
14
14
|
description: AccessSchema is a tool for ACL or tariff plans schema definition and
|
15
15
|
checks
|
@@ -69,7 +69,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
69
69
|
version: '0'
|
70
70
|
segments:
|
71
71
|
- 0
|
72
|
-
hash: -
|
72
|
+
hash: -3148042123227108986
|
73
73
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
74
74
|
none: false
|
75
75
|
requirements:
|
@@ -78,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
78
78
|
version: '0'
|
79
79
|
segments:
|
80
80
|
- 0
|
81
|
-
hash: -
|
81
|
+
hash: -3148042123227108986
|
82
82
|
requirements: []
|
83
83
|
rubyforge_project: access_schema
|
84
84
|
rubygems_version: 1.8.16
|