Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Debian New Member Process
nm.debian.org
Commits
93155b8b
Commit
93155b8b
authored
Jun 03, 2016
by
Enrico Zini
Browse files
Do not give approve permissions on am_ok until an am is assigned
parent
12355a93
Changes
2
Hide whitespace changes
Inline
Side-by-side
process/models.py
View file @
93155b8b
...
@@ -37,9 +37,9 @@ class ProcessVisitorPermissions(bmodels.PersonVisitorPermissions):
...
@@ -37,9 +37,9 @@ class ProcessVisitorPermissions(bmodels.PersonVisitorPermissions):
self
.
process_frozen
=
self
.
process
.
frozen_by
is
not
None
self
.
process_frozen
=
self
.
process
.
frozen_by
is
not
None
self
.
process_approved
=
self
.
process
.
approved_by
is
not
None
self
.
process_approved
=
self
.
process
.
approved_by
is
not
None
a
=
self
.
process
.
current_am_assignment
self
.
current_am_assignment
=
self
.
process
.
current_am_assignment
if
a
is
not
None
:
if
self
.
current_am_assignment
is
not
None
:
self
.
is_current_am
=
a
.
am
.
person
==
self
.
visitor
self
.
is_current_am
=
self
.
current_am_assignment
.
am
.
person
==
self
.
visitor
else
:
else
:
self
.
is_current_am
=
False
self
.
is_current_am
=
False
...
@@ -107,11 +107,11 @@ class RequirementVisitorPermissions(ProcessVisitorPermissions):
...
@@ -107,11 +107,11 @@ class RequirementVisitorPermissions(ProcessVisitorPermissions):
self
.
add
(
"edit_statements"
)
self
.
add
(
"edit_statements"
)
if
self
.
visitor
.
is_dd
:
self
.
add
(
"req_unapprove"
if
self
.
requirement
.
approved_by
else
"req_approve"
)
if
self
.
visitor
.
is_dd
:
self
.
add
(
"req_unapprove"
if
self
.
requirement
.
approved_by
else
"req_approve"
)
elif
self
.
requirement
.
type
==
"am_ok"
:
elif
self
.
requirement
.
type
==
"am_ok"
:
a
=
self
.
process
.
current_am_assignment
if
self
.
current_am_assignment
:
if
self
.
is_current_am
:
if
self
.
is_current_am
:
self
.
add
(
"edit_statements"
)
self
.
add
(
"edit_statements"
)
elif
self
.
visitor
.
is_active_am
:
elif
self
.
visitor
.
is_active_am
:
self
.
add
(
"req_unapprove"
if
self
.
requirement
.
approved_by
else
"req_approve"
)
self
.
add
(
"req_unapprove"
if
self
.
requirement
.
approved_by
else
"req_approve"
)
class
ProcessManager
(
models
.
Manager
):
class
ProcessManager
(
models
.
Manager
):
...
...
process/tests/test_perms.py
View file @
93155b8b
...
@@ -27,7 +27,7 @@ class ProcExpected(object):
...
@@ -27,7 +27,7 @@ class ProcExpected(object):
self
.
proc
.
set
(
"app dd_nu dd_u activeam fd dam"
,
"update_keycheck view_person_audit_log"
)
self
.
proc
.
set
(
"app dd_nu dd_u activeam fd dam"
,
"update_keycheck view_person_audit_log"
)
self
.
proc
.
patch
(
"activeam fd dam app"
,
"+edit_bio +edit_ldap +view_mbox"
)
self
.
proc
.
patch
(
"activeam fd dam app"
,
"+edit_bio +edit_ldap +view_mbox"
)
self
.
proc
.
patch
(
"fd dam app"
,
"+request_new_status"
)
self
.
proc
.
patch
(
"fd dam app"
,
"+request_new_status"
)
self
.
proc
.
patch
(
"fd dam"
,
"+proc_freeze"
)
self
.
proc
.
patch
(
"fd dam"
,
"+proc_freeze
+fd_comments
"
)
self
.
proc
.
patch
(
"dc dc_ga dm dm_ga dd_nu dd_u dd_e dd_r activeam fd dam app"
,
"+add_log"
)
self
.
proc
.
patch
(
"dc dc_ga dm dm_ga dd_nu dd_u dd_e dd_r activeam fd dam app"
,
"+add_log"
)
self
.
intent
.
patch
(
"fd dam app"
,
"+edit_statements"
)
self
.
intent
.
patch
(
"fd dam app"
,
"+edit_statements"
)
self
.
intent
.
patch
(
"activeam fd dam dd_nu dd_u"
,
"+req_approve"
)
self
.
intent
.
patch
(
"activeam fd dam dd_nu dd_u"
,
"+req_approve"
)
...
@@ -45,6 +45,11 @@ class ProcExpected(object):
...
@@ -45,6 +45,11 @@ class ProcExpected(object):
self
.
advocate
.
patch
(
"am"
,
"+edit_statements +req_approve"
)
self
.
advocate
.
patch
(
"am"
,
"+edit_statements +req_approve"
)
self
.
am_ok
.
patch
(
"fd dam"
,
"+edit_statements +req_approve"
)
self
.
am_ok
.
patch
(
"fd dam"
,
"+edit_statements +req_approve"
)
def
patch_generic_process_am_assigned
(
self
):
self
.
proc
.
patch
(
"am"
,
"+fd_comments"
)
self
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
self
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
def
patch_generic_process_frozen
(
self
):
def
patch_generic_process_frozen
(
self
):
self
.
proc
.
patch
(
"fd dam"
,
"-proc_freeze +proc_unfreeze +proc_approve"
)
self
.
proc
.
patch
(
"fd dam"
,
"-proc_freeze +proc_unfreeze +proc_approve"
)
self
.
proc
.
patch
(
"activeam app"
,
"-edit_bio -edit_ldap"
)
self
.
proc
.
patch
(
"activeam app"
,
"-edit_bio -edit_ldap"
)
...
@@ -266,9 +271,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -266,9 +271,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
@@ -308,9 +312,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -308,9 +312,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
@@ -350,9 +353,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -350,9 +353,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
@@ -393,9 +395,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -393,9 +395,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
@@ -437,8 +438,7 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -437,8 +438,7 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio +edit_ldap"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
@@ -481,9 +481,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
...
@@ -481,9 +481,8 @@ class TestVisitApplicant(ProcessFixtureMixin, TestCase):
# Assign manager
# Assign manager
self
.
_assign_am
(
"fd"
)
self
.
_assign_am
(
"fd"
)
expected
.
patch_generic_process_am_assigned
()
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
proc
.
patch
(
"am"
,
"+edit_bio"
)
expected
.
am_ok
.
patch
(
"am"
,
"+edit_statements"
)
expected
.
am_ok
.
patch
(
"activeam"
,
"+req_approve"
)
self
.
assertPerms
(
expected
)
self
.
assertPerms
(
expected
)
# Freeze for review
# Freeze for review
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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