Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
open-source
aoz-003
Commits
d9db0f88
Commit
d9db0f88
authored
May 12, 2017
by
Tugce Nur Tas
Committed by
Tuğçe Nur Taş
May 12, 2017
Browse files
refactor user policy test
parent
b492551d
Changes
1
Hide whitespace changes
Inline
Side-by-side
test/policies/user_policy_test.rb
View file @
d9db0f88
...
...
@@ -2,81 +2,81 @@ require 'test_helper'
class
UserPolicyTest
<
ActiveSupport
::
TestCase
def
setup
@
user_as_
superadmin
=
create
:user
,
:with_clients
,
:with_profile
@
user_as_
other_superadmin
=
create
:user
,
:with_profile
@
user_as_
social_worker
=
create
:user
,
:with_clients
,
:with_profile
,
role:
'social_worker'
@
user_as_
department_manager
=
create
:user
,
:with_profile
,
role:
'department_manager'
@superadmin
=
create
:user
,
:with_clients
,
:with_profile
,
role:
'superadmin'
@other_superadmin
=
create
:user
,
:with_profile
,
role:
'superadmin'
@social_worker
=
create
:user
,
:with_clients
,
:with_profile
,
role:
'social_worker'
@department_manager
=
create
:user
,
:with_profile
,
role:
'department_manager'
end
test
'Destroy: superadmin can delete other user'
do
assert_permit
@
user_as_
superadmin
,
@
user_as_
social_worker
,
'destroy?'
assert_permit
@
user_as_
superadmin
,
@
user_as_
department_manager
,
'destroy?'
assert_permit
@superadmin
,
@social_worker
,
'destroy?'
assert_permit
@superadmin
,
@department_manager
,
'destroy?'
end
test
'Destroy: superadmin cannot delete other superadmin'
do
refute_permit
@
user_as_
superadmin
,
@
user_as_
other_superadmin
,
'destroy?'
refute_permit
@superadmin
,
@other_superadmin
,
'destroy?'
end
test
'Destroy: superadmin cannot delete itself'
do
refute_permit
@
user_as_
superadmin
,
@
user_as_
superadmin
,
'destroy?'
refute_permit
@superadmin
,
@superadmin
,
'destroy?'
end
test
'New: superadmin can create user'
do
assert_permit
@
user_as_
superadmin
,
User
,
'new?'
,
'create?'
assert_permit
@superadmin
,
User
,
'new?'
,
'create?'
end
test
'New: social worker cannot create user'
do
refute_permit
@
user_as_
social_worker
,
User
,
'create?'
,
'new?'
refute_permit
@social_worker
,
User
,
'create?'
,
'new?'
end
test
'New: department manager cannot create user'
do
refute_permit
@
user_as_
department_manager
,
User
,
'create?'
,
'new?'
refute_permit
@department_manager
,
User
,
'create?'
,
'new?'
end
test
'Update: user can update herself'
do
assert_permit
@
user_as_
superadmin
,
@
user_as_
superadmin
,
'update?'
,
'edit?'
assert_permit
@
user_as_
social_worker
,
@
user_as_
social_worker
,
'update?'
,
'edit?'
assert_permit
@
user_as_
department_manager
,
@
user_as_
department_manager
,
'update?'
,
'edit?'
assert_permit
@superadmin
,
@superadmin
,
'update?'
,
'edit?'
assert_permit
@social_worker
,
@social_worker
,
'update?'
,
'edit?'
assert_permit
@department_manager
,
@department_manager
,
'update?'
,
'edit?'
end
test
'Update: social worker cannot update other user'
do
refute_permit
@
user_as_
social_worker
,
@
user_as_
superadmin
,
'update?'
,
'edit?'
refute_permit
@
user_as_
social_worker
,
@
user_as_
department_manager
,
'update?'
,
'edit?'
refute_permit
@social_worker
,
@superadmin
,
'update?'
,
'edit?'
refute_permit
@social_worker
,
@department_manager
,
'update?'
,
'edit?'
end
test
'Update: department manager can notupdate other user'
do
refute_permit
@
user_as_
department_manager
,
@
user_as_
superadmin
,
'update?'
,
'edit?'
refute_permit
@
user_as_
department_manager
,
@
user_as_
social_worker
,
'update?'
,
'edit?'
refute_permit
@department_manager
,
@superadmin
,
'update?'
,
'edit?'
refute_permit
@department_manager
,
@social_worker
,
'update?'
,
'edit?'
end
test
'Update: superadmin can update other user'
do
assert_permit
@
user_as_
superadmin
,
@
user_as_
social_worker
,
'update?'
,
'edit?'
assert_permit
@
user_as_
superadmin
,
@
user_as_
department_manager
,
'update?'
,
'edit?'
assert_permit
@
user_as_
superadmin
,
@
user_as_
other_superadmin
,
'update?'
,
'edit?'
assert_permit
@superadmin
,
@social_worker
,
'update?'
,
'edit?'
assert_permit
@superadmin
,
@department_manager
,
'update?'
,
'edit?'
assert_permit
@superadmin
,
@other_superadmin
,
'update?'
,
'edit?'
end
test
'Show: superadmin can show users'
do
User
.
all
.
each
do
|
user
|
assert_permit
@
user_as_
superadmin
,
user
,
'show?'
assert_permit
@superadmin
,
user
,
'show?'
end
end
test
'Show: department manager cannot show other user'
do
refute_permit
@
user_as_
department_manager
,
@
user_as_
superadmin
,
'show?'
refute_permit
@department_manager
,
@superadmin
,
'show?'
end
test
'Show: social worker cannot show users'
do
refute_permit
@
user_as_
social_worker
,
@
user_as_
department_manager
,
'show?'
refute_permit
@social_worker
,
@department_manager
,
'show?'
end
test
'Index: department manager cannot index users'
do
refute_permit
@
user_as_
department_manager
,
@
user_as_
superadmin
,
'index?'
refute_permit
@
user_as_
department_manager
,
@
user_as_
social_worker
,
'index?'
refute_permit
@
user_as_
department_manager
,
@
user_as_
department_manager
,
'index?'
refute_permit
@department_manager
,
@superadmin
,
'index?'
refute_permit
@department_manager
,
@social_worker
,
'index?'
refute_permit
@department_manager
,
@department_manager
,
'index?'
end
test
'Index: social worker cannot index users'
do
refute_permit
@
user_as_
social_worker
,
@
user_as_
department_manager
,
'index?'
refute_permit
@
user_as_
social_worker
,
@
user_as_
superadmin
,
'index?'
refute_permit
@social_worker
,
@department_manager
,
'index?'
refute_permit
@social_worker
,
@superadmin
,
'index?'
end
end
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment