diff --git a/ietf/doc/tests_review.py b/ietf/doc/tests_review.py index fa62c8d8e..a888f56a3 100644 --- a/ietf/doc/tests_review.py +++ b/ietf/doc/tests_review.py @@ -160,7 +160,8 @@ class ReviewTests(TestCase): self.assertContains(r, "{} Review".format(review_req.type.name)) def test_review_request(self): - doc = WgDraftFactory(group__acronym='mars',rev='01') + author = PersonFactory() + doc = WgDraftFactory(group__acronym='mars',rev='01', authors=[author]) review_team = ReviewTeamFactory(acronym="reviewteam", name="Review Team", type_id="review", list_email="reviewteam@ietf.org", parent=Group.objects.get(acronym="farfut")) rev_role = RoleFactory(group=review_team,person__user__username='reviewer',person__user__email='reviewer@example.com',name_id='reviewer') review_req = ReviewRequestFactory(doc=doc,team=review_team,type_id='early',state_id='assigned',requested_by=rev_role.person,deadline=datetime.datetime.now()+datetime.timedelta(days=20)) @@ -171,6 +172,7 @@ class ReviewTests(TestCase): r = self.client.get(url) self.assertContains(r, review_req.team.acronym) self.assertContains(r, review_req.team.name) + self.assertContains(r, author.name) url = urlreverse('ietf.doc.views_review.review_request_forced_login', kwargs={ "name": doc.name, "request_id": review_req.pk }) r = self.client.get(url) @@ -426,9 +428,9 @@ class ReviewTests(TestCase): self.assertEqual(len(outbox), 1) self.assertEqual('"Some Reviewer" ', outbox[0]["To"]) message = outbox[0].get_payload(decode=True).decode("utf-8") - self.assertTrue("{} has assigned you".format(secretary.person.ascii) in message) - self.assertTrue("This team has completed other reviews" in message) - self.assertTrue("{} -01 Serious Issues".format(reviewer_email.person.ascii) in message) + self.assertIn("{} has assigned you".format(secretary.person.ascii), message) + self.assertIn("This team has completed other reviews", message) + self.assertIn("{} -01 Serious Issues".format(reviewer_email.person.ascii), message) def test_accept_reviewer_assignment(self): diff --git a/ietf/doc/views_review.py b/ietf/doc/views_review.py index 8800b8aa4..9aa571d1b 100644 --- a/ietf/doc/views_review.py +++ b/ietf/doc/views_review.py @@ -225,6 +225,10 @@ def review_request(request, name, request_id): assignment.save() return redirect(review_request, name=review_req.doc.name, request_id=review_req.pk) + wg_chairs = None + if review_req.doc.group: + wg_chairs = [role.person for role in review_req.doc.group.role_set.filter(name__slug='chair')] + return render(request, 'doc/review/review_request.html', { 'doc': doc, 'review_req': review_req, @@ -233,6 +237,7 @@ def review_request(request, name, request_id): 'can_edit_comment': can_edit_comment, 'can_edit_deadline': can_edit_deadline, 'assignments': assignments, + 'wg_chairs': wg_chairs, }) diff --git a/ietf/group/tests_review.py b/ietf/group/tests_review.py index 1c6687265..8b4e773f8 100644 --- a/ietf/group/tests_review.py +++ b/ietf/group/tests_review.py @@ -185,7 +185,8 @@ class ReviewTests(TestCase): group = ReviewTeamFactory() RoleFactory(name_id='reviewer',group=group,person__user__username='reviewer').person marsperson = RoleFactory(name_id='reviewer',group=group,person=PersonFactory(name="Mars Anders Chairman",user__username='marschairman')).person - review_req1 = ReviewRequestFactory(doc__pages=2,doc__shepherd=marsperson.email(),team=group) + doc_author = PersonFactory() + review_req1 = ReviewRequestFactory(doc__pages=2,doc__shepherd=marsperson.email(),team=group, doc__authors=[doc_author]) review_req2 = ReviewRequestFactory(team=group) review_req3 = ReviewRequestFactory(team=group) RoleFactory(name_id='chair',group=review_req1.doc.group,person=marsperson) @@ -205,6 +206,7 @@ class ReviewTests(TestCase): r = self.client.get(unassigned_url) self.assertEqual(r.status_code, 200) self.assertContains(r, review_req1.doc.name) + self.assertContains(r, doc_author.name) # Test that conflicts are detected r = self.client.post(unassigned_url, { diff --git a/ietf/group/views.py b/ietf/group/views.py index 9caa6f3c0..93df986cd 100644 --- a/ietf/group/views.py +++ b/ietf/group/views.py @@ -1492,6 +1492,9 @@ def manage_review_requests(request, acronym, group_type=None, assignment_status= augment_review_requests_with_events(l) req.latest_reqs = l + req.wg_chairs = None + if req.doc.group: + req.wg_chairs = [role.person for role in req.doc.group.role_set.filter(name__slug='chair')] saving = False newly_closed = newly_opened = newly_assigned = 0 diff --git a/ietf/templates/doc/review/request_info.html b/ietf/templates/doc/review/request_info.html index d7ba5f915..26b21a803 100644 --- a/ietf/templates/doc/review/request_info.html +++ b/ietf/templates/doc/review/request_info.html @@ -68,6 +68,22 @@ {% endif %} + {% if review_req.doc.authors %} + + + Authors + {{ review_req.doc.authors|join:", " }} + + {% endif %} + + {% if wg_chairs %} + + + WG chairs + {{ wg_chairs|join:", " }} + + {% endif %} + {% if doc.time %} diff --git a/ietf/templates/group/manage_review_requests.html b/ietf/templates/group/manage_review_requests.html index 873f432a3..1a2cd83c6 100644 --- a/ietf/templates/group/manage_review_requests.html +++ b/ietf/templates/group/manage_review_requests.html @@ -56,6 +56,11 @@ Auto-suggested {% endif %}

+

+ {% if r.doc.authors %}Authors: {{ r.doc.authors|join:", " }}{% endif %} +
+ {% if r.wg_chairs %}WG chairs: {{ r.wg_chairs|join:", " }}{% endif %} +

{% if r.latest_reqs %} {% for rlatest in r.latest_reqs %}