Commit 9b659142 authored by Enrico Zini's avatar Enrico Zini
Browse files

process_show tests pass

parent 9a5de9cd
...@@ -146,7 +146,7 @@ class ProcessManager(models.Manager): ...@@ -146,7 +146,7 @@ class ProcessManager(models.Manager):
return requirements return requirements
@transaction.atomic @transaction.atomic
def create(self, person, applying_for): def create(self, person, applying_for, **kw):
""" """
Create a new process and all its requirements Create a new process and all its requirements
""" """
...@@ -162,7 +162,7 @@ class ProcessManager(models.Manager): ...@@ -162,7 +162,7 @@ class ProcessManager(models.Manager):
requirements = self.compute_requirements(person.status, applying_for) requirements = self.compute_requirements(person.status, applying_for)
# Create the new process # Create the new process
res = self.model(person=person, applying_for=applying_for) res = self.model(person=person, applying_for=applying_for, **kw)
# Save it to get an ID # Save it to get an ID
res.save(using=self._db) res.save(using=self._db)
......
...@@ -10,30 +10,16 @@ ...@@ -10,30 +10,16 @@
<br/> <br/>
<textarea name="logtext" rows="3" cols="80" placeholder="vacation notice / remark about the process / status update / ..."></textarea> <textarea name="logtext" rows="3" cols="80" placeholder="vacation notice / remark about the process / status update / ..."></textarea>
<br/> <br/>
{% if "add_log" in visit_perms %}
<button id="log_public" type="submit" name="add_action" value="log_public">Comment</button> <button id="log_public" type="submit" name="add_action" value="log_public">Comment</button>
<button id="log_private" type="submit" name="add_action" value="log_private">Comment (confidential)</button> <button id="log_private" type="submit" name="add_action" value="log_private">Comment (confidential)</button>
{% if requirement %}
{% if requirement.approved_by %}
<button id="req_unapprove" type="submit" name="add_action" value="req_unapprove">Unapprove</button>
{% else %}
<button id="req_approve" type="submit" name="add_action" value="req_approve">Approve</button>
{% endif %}
{% else %}
{% if not process.frozen_by %}
{% if not process.approved_by %}
<button id="proc_freeze" type="submit" name="add_action" value="proc_freeze">Freeze for review</button>
{% else %}
{# no button to show here: this case should not happen and should get a warning by nightly maintenance #}
{% endif %}
{% else %}
{% if not process.approved_by %}
<button id="proc_unfreeze" type="submit" name="add_action" value="proc_unfreeze">Unfreeze for further work</button>
<button id="proc_approve" type="submit" name="add_action" value="proc_approve">Approve process</button>
{% else %}
<button id="proc_unapprove" type="submit" name="add_action" value="proc_unapprove">Unapprove process</button>
{% endif %}
{% endif %}
{% endif %} {% endif %}
{% if "req_approve" in visit_perms %}<button id="req_approve" type="submit" name="add_action" value="req_approve">Approve</button>{% endif %}
{% if "req_unapprove" in visit_perms %}<button id="req_unapprove" type="submit" name="add_action" value="req_unapprove">Unapprove</button>{% endif %}
{% if "proc_freeze" in visit_perms %}<button id="proc_freeze" type="submit" name="add_action" value="proc_freeze">Freeze for review</button>{% endif %}
{% if "proc_unfreeze" in visit_perms %}<button id="proc_unfreeze" type="submit" name="add_action" value="proc_unfreeze">Unfreeze for further work</button>{% endif %}
{% if "proc_approve" in visit_perms %}<button id="proc_approve" type="submit" name="add_action" value="proc_approve">Approve process</button>{% endif %}
{% if "proc_unapprove" in visit_perms %}<button id="proc_unapprove" type="submit" name="add_action" value="proc_unapprove">Unapprove process</button>{% endif %}
</form> </form>
</p> </p>
<table> <table>
......
...@@ -26,7 +26,7 @@ class TestProcesses(NamedObjects): ...@@ -26,7 +26,7 @@ class TestProcesses(NamedObjects):
# except AM.DoesNotExist: # except AM.DoesNotExist:
# am = AM.objects.create(person=kw["manager"]) # am = AM.objects.create(person=kw["manager"])
# kw["manager"] = am # kw["manager"] = am
#
self[_name] = o = self._model.objects.create(**kw) self[_name] = o = self._model.objects.create(**kw)
# for a in advocates: # for a in advocates:
# o.advocates.add(a) # o.advocates.add(a)
......
...@@ -43,7 +43,7 @@ class TestProcessShow(ProcessFixtureMixin, TestCase): ...@@ -43,7 +43,7 @@ class TestProcessShow(ProcessFixtureMixin, TestCase):
def assertPageElements(self, response, visit_perms): def assertPageElements(self, response, visit_perms):
# Check page elements based on visit_perms # Check page elements based on visit_perms
wanted = [] wanted = []
if visit_perms.visitor.is_admin: if visit_perms.visitor and visit_perms.visitor.is_admin:
wanted.append("view_fd_comment") wanted.append("view_fd_comment")
if "add_log" in visit_perms: if "add_log" in visit_perms:
wanted += ["log_public", "log_private"] wanted += ["log_public", "log_private"]
...@@ -53,7 +53,7 @@ class TestProcessShow(ProcessFixtureMixin, TestCase): ...@@ -53,7 +53,7 @@ class TestProcessShow(ProcessFixtureMixin, TestCase):
def _test_perms(self, src, tgt, visitor, am=None): def _test_perms(self, src, tgt, visitor, am=None):
self.persons.create("app", status=src) self.persons.create("app", status=src)
self.processes.create("app", person=self.persons.app, applying_for=tgt) self.processes.create("app", person=self.persons.app, applying_for=tgt, fd_comment="test")
if am is not None: if am is not None:
self.persons.create("am", status=am) self.persons.create("am", status=am)
self.ams.create("am", person=self.persons.am) self.ams.create("am", person=self.persons.am)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment