From 88333824f3e7ed3a81ebaeb8a9eedbcd16adf610 Mon Sep 17 00:00:00 2001
From: Todd Dembrey <todd.dembrey@torchbox.com>
Date: Thu, 14 Feb 2019 17:48:43 +0000
Subject: [PATCH] GH-957: correctly check the id in the reviewers list

---
 opentech/apply/funds/forms.py            | 4 ++--
 opentech/apply/funds/tests/test_views.py | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/opentech/apply/funds/forms.py b/opentech/apply/funds/forms.py
index 02b44a468..0a71b92e8 100644
--- a/opentech/apply/funds/forms.py
+++ b/opentech/apply/funds/forms.py
@@ -164,7 +164,7 @@ class UpdateReviewersForm(forms.ModelForm):
                 reviewer__in=reviewers | self.submitted_reviewers
             ).delete()
 
-            remaining_reviewers = list(assigned_reviewers)
+            remaining_reviewers = assigned_reviewers.values_list('reviewer_id', flat=True)
 
             # 2b. Add in any new non-role reviewers selected
             AssignedReviewers.objects.bulk_create(
@@ -173,7 +173,7 @@ class UpdateReviewersForm(forms.ModelForm):
                     role=None,
                     reviewer=reviewer
                 ) for reviewer in reviewers
-                if reviewer not in remaining_reviewers
+                if reviewer.id not in remaining_reviewers
             )
 
         # 3. Add in anyone who has already reviewed but who is not selected as a reviewer on the form
diff --git a/opentech/apply/funds/tests/test_views.py b/opentech/apply/funds/tests/test_views.py
index ebbd9c029..2eee0123a 100644
--- a/opentech/apply/funds/tests/test_views.py
+++ b/opentech/apply/funds/tests/test_views.py
@@ -215,7 +215,7 @@ class TestReviewersUpdateView(BaseSubmissionViewTestCase):
         }
         data.update(
             **{
-                f'reviewer_role_{str(role)}': reviewer.id
+                f'role_reviewer_{str(role)}': reviewer.id
                 for role, reviewer in zip(self.roles, reviewer_roles)
             }
         )
@@ -224,7 +224,7 @@ class TestReviewersUpdateView(BaseSubmissionViewTestCase):
     def test_lead_can_add_staff_single(self):
         submission = ApplicationSubmissionFactory(lead=self.user)
 
-        self.post_form(submission, [self.staff[0]])
+        self.post_form(submission, reviewer_roles=[self.staff[0]])
 
         self.assertCountEqual(submission.reviewers.all(), [self.staff[0]])
 
-- 
GitLab