More cleanup and correction. Caught a pervasive misuse of a state-name

- Legacy-Id: 16036
This commit is contained in:
Robert Sparks 2019-03-15 20:39:06 +00:00
parent 3678d20b0b
commit 4b147f2ef8
6 changed files with 14 additions and 23 deletions

View file

@ -814,7 +814,7 @@ class ReviewTests(TestCase):
first_review = assignment.review
# complete
assignment = assignment.review_request.reviewassignment_set.create(state_id="requested", reviewer=assignment.reviewer)
assignment = assignment.review_request.reviewassignment_set.create(state_id="assigned", reviewer=assignment.reviewer)
url = urlreverse('ietf.doc.views_review.complete_review', kwargs={ "name": assignment.review_request.doc.name, "assignment_id": assignment.pk })

View file

@ -103,7 +103,7 @@ def fill_in_document_table_attributes(docs, have_telechat_date=False):
if d.get_state_slug() != "rfc":
d.milestones = [ m for (t, m) in sorted(((m.time, m) for m in d.groupmilestone_set.all() if m.state_id == "active")) ]
d.reviewed_by_teams = sorted(set(r.team.acronym for r in d.reviewrequest_set.filter(state__in=["requested","accepted","part-completed","completed"]).distinct().select_related('team')))
d.reviewed_by_teams = sorted(set(r.team.acronym for r in d.reviewrequest_set.filter(state__in=["assigned","accepted","part-completed","completed"]).distinct().select_related('team')))
e = d.latest_event_cache.get('started_iesg_process', None)
d.balloting_started = e.time if e else datetime.datetime.min

View file

@ -274,7 +274,7 @@ def close_request(request, name, request_id):
class AssignReviewerForm(forms.Form):
reviewer = PersonEmailChoiceField(empty_label="(None)", required=False)
reviewer = PersonEmailChoiceField(label="Assign Additional Reviewer", empty_label="(None)", required=False)
add_skip = forms.BooleanField(label='Skip next time', required=False)
def __init__(self, review_req, *args, **kwargs):
@ -304,6 +304,7 @@ def assign_reviewer(request, name, request_id):
return render(request, 'doc/review/assign_reviewer.html', {
'doc': doc,
'review_req': review_req,
'assignments': review_req.reviewassignment_set.all(),
'form': form,
})
@ -390,7 +391,7 @@ class CompleteReviewForm(forms.Form):
known_revisions = NewRevisionDocEvent.objects.filter(doc=doc).order_by("time", "id").values_list("rev", "time", flat=False)
revising_review = assignment.state_id not in ["requested", "accepted"]
revising_review = assignment.state_id not in ["assigned", "accepted"]
if not revising_review:
self.fields["state"].choices = [
@ -481,7 +482,7 @@ def complete_review(request, name, assignment_id):
doc = get_object_or_404(Document, name=name)
assignment = get_object_or_404(ReviewAssignment, pk=assignment_id)
revising_review = assignment.state_id not in ["requested", "accepted"]
revising_review = assignment.state_id not in ["assigned", "accepted"]
is_reviewer = user_is_person(request.user, assignment.reviewer.person)
can_manage_request = can_manage_review_requests_for_team(request.user, assignment.review_request.team)
@ -588,7 +589,7 @@ def complete_review(request, name, assignment_id):
close_event.save()
if assignment.state_id == "part-completed" and not revising_review:
existing_assignments = ReviewAssignment.objects.filter(review_request__doc=assignment.review_request.doc, review_request__team=assignment.review_request.team, state__in=("requested", "accepted", "completed"))
existing_assignments = ReviewAssignment.objects.filter(review_request__doc=assignment.review_request.doc, review_request__team=assignment.review_request.team, state__in=("assigned", "accepted", "completed"))
subject = "Review of {}-{} completed partially".format(assignment.review_request.doc.name, assignment.reviewed_rev)

View file

@ -52,23 +52,13 @@ def can_access_review_stats_for_team(user, team):
def review_assignments_to_list_for_docs(docs):
assignment_qs = ReviewAssignment.objects.filter(
state__in=["requested", "accepted", "part-completed", "completed"],
state__in=["assigned", "accepted", "part-completed", "completed"],
).prefetch_related("result")
doc_names = [d.name for d in docs]
return extract_revision_ordered_review_assignments_for_documents_and_replaced(assignment_qs, doc_names)
# TODO : remove this when there are no callers
def review_requests_to_list_for_docs(docs):
request_qs = ReviewRequest.objects.filter(
state__in=["requested", "accepted", "part-completed", "completed"],
).prefetch_related("result")
doc_names = [d.name for d in docs]
return extract_revision_ordered_review_requests_for_documents_and_replaced(request_qs, doc_names)
def augment_review_requests_with_events(review_reqs):
req_dict = { r.pk: r for r in review_reqs }
for e in ReviewRequestDocEvent.objects.filter(review_request__in=review_reqs, type__in=["assigned_review_request", "closed_review_request"]).order_by("time"):
@ -930,8 +920,8 @@ def make_assignment_choices(email_queryset, review_req):
stats = []
assignment_data = assignment_data_for_reviewers.get(e.person_id, [])
currently_open = sum(1 for d in assignment_data if d.state in ["requested", "accepted"])
pages = sum(rd.doc_pages for rd in assignment_data if rd.state in ["requested", "accepted"])
currently_open = sum(1 for d in assignment_data if d.state in ["assigned", "accepted"])
pages = sum(rd.doc_pages for rd in assignment_data if rd.state in ["assigned", "accepted"])
if currently_open > 0:
stats.append("currently {count} open, {pages} pages".format(count=currently_open, pages=pages))
could_have_completed = [d for d in assignment_data if d.state in ["part-completed", "completed", "no-response"]]

View file

@ -1017,7 +1017,7 @@ def review_stats(request, stats_type=None, acronym=None):
possible_stats_types = [
("completion", "Completion status"),
("results", "Review results"),
("states", "Request states"),
("states", "Assignment states"),
]
if level == "team":

View file

@ -115,7 +115,7 @@
{{ assignment.reviewer.person }}
{% if assignment.can_reject_reviewer_assignment or assignment.can_accept_reviewer_assignment %}
<div class="reviewer-assignment-not-accepted">
{% if assignment.state_id == "requested"%}
{% if assignment.state_id == "assigned"%}
<em>Assignment not accepted yet:</em>
{% else %}
<em>Assignment accepted:</em>
@ -146,7 +146,7 @@
<td>
{% if assignment.review %}
<a href="{{ assignment.review.get_absolute_url }}">{{ assignment.review.name }}</a>
{% elif assignment.state_id == "requested" or assignment.state_id == "accepted" %}
{% elif assignment.state_id == "assigned" or assignment.state_id == "accepted" %}
Not completed yet
{% else %}
Not available
@ -154,7 +154,7 @@
{% if assignment.can_complete_review %}
{# TODO: The url below needs to be to a new complete_assignment passed the assignment.pk #}
<a class="btn btn-primary btn-xs" href="{% url "ietf.doc.views_review.complete_review" name=doc.name assignment_id=assignment.pk %}"><span class="fa fa-pencil-square-o"></span> {% if assignment.state_id == "requested" or assignment.state_id == "accepted" %}Complete review{% else %}Correct review{% endif %}</a>
<a class="btn btn-primary btn-xs" href="{% url "ietf.doc.views_review.complete_review" name=doc.name assignment_id=assignment.pk %}"><span class="fa fa-pencil-square-o"></span> {% if assignment.state_id == "assigned" or assignment.state_id == "accepted" %}Complete review{% else %}Correct review{% endif %}</a>
{% endif %}
</td>
</tr>