From b5baa640050c7576dec3419016fd8f2a9853000f Mon Sep 17 00:00:00 2001 From: Todd Dembrey <todd.dembrey@torchbox.com> Date: Thu, 23 Aug 2018 08:07:07 +0100 Subject: [PATCH] Refactor tests for more reasonable performance --- opentech/apply/funds/tests/test_views.py | 74 ++++++++++-------------- 1 file changed, 31 insertions(+), 43 deletions(-) diff --git a/opentech/apply/funds/tests/test_views.py b/opentech/apply/funds/tests/test_views.py index 0e68c7d06..6131353fc 100644 --- a/opentech/apply/funds/tests/test_views.py +++ b/opentech/apply/funds/tests/test_views.py @@ -140,6 +140,12 @@ class TestStaffSubmissionView(BaseSubmissionViewTestCase): class TestReviewersUpdateView(BaseSubmissionViewTestCase): user_factory = StaffFactory + @classmethod + def setUpTestData(cls): + super().setUpTestData() + cls.staff = StaffFactory.create_batch(4) + cls.reviewers = ReviewerFactory.create_batch(4) + def post_form(self, submission, staff=list(), reviewers=list()): return self.post_page(submission, { 'form-submitted-reviewer_form': '', @@ -149,82 +155,67 @@ class TestReviewersUpdateView(BaseSubmissionViewTestCase): def test_lead_can_add_staff_single(self): submission = ApplicationSubmissionFactory(lead=self.user) - staff = StaffFactory.create_batch(4) - self.post_form(submission, staff) + self.post_form(submission, self.staff) - self.assertCountEqual(submission.reviewers.all(), staff) + self.assertCountEqual(submission.reviewers.all(), self.staff) def test_lead_can_remove_staff_single(self): - staff = StaffFactory.create_batch(4) - submission = ApplicationSubmissionFactory(lead=self.user, reviewers=staff) - self.assertCountEqual(submission.reviewers.all(), staff) + submission = ApplicationSubmissionFactory(lead=self.user, reviewers=self.staff) + self.assertCountEqual(submission.reviewers.all(), self.staff) self.post_form(submission, []) self.assertCountEqual(submission.reviewers.all(), []) def test_lead_can_remove_some_staff(self): - staff = StaffFactory.create_batch(4) - submission = ApplicationSubmissionFactory(lead=self.user, reviewers=staff) - self.assertCountEqual(submission.reviewers.all(), staff) + submission = ApplicationSubmissionFactory(lead=self.user, reviewers=self.staff) + self.assertCountEqual(submission.reviewers.all(), self.staff) - self.post_form(submission, staff[0:2]) + self.post_form(submission, self.staff[0:2]) - self.assertCountEqual(submission.reviewers.all(), staff[0:2]) + self.assertCountEqual(submission.reviewers.all(), self.staff[0:2]) def test_lead_cant_add_reviewers_single(self): submission = ApplicationSubmissionFactory(lead=self.user) - reviewers = ReviewerFactory.create_batch(4) - self.post_form(submission, reviewers=reviewers) + self.post_form(submission, reviewers=self.reviewers) self.assertCountEqual(submission.reviewers.all(), []) def test_lead_can_add_staff_and_reviewers_for_proposal(self): submission = InvitedToProposalFactory(lead=self.user) - staff = StaffFactory.create_batch(4) - reviewers = ReviewerFactory.create_batch(4) + self.post_form(submission, self.staff, self.reviewers) - self.post_form(submission, staff, reviewers) - - self.assertCountEqual(submission.reviewers.all(), staff + reviewers) + self.assertCountEqual(submission.reviewers.all(), self.staff + self.reviewers) def test_lead_can_remove_staff_and_reviewers_for_proposal(self): - staff = StaffFactory.create_batch(4) - reviewers = ReviewerFactory.create_batch(4) - - submission = InvitedToProposalFactory(lead=self.user, reviewers=staff + reviewers) - self.assertCountEqual(submission.reviewers.all(), staff + reviewers) + submission = InvitedToProposalFactory(lead=self.user, reviewers=self.staff + self.reviewers) + self.assertCountEqual(submission.reviewers.all(), self.staff + self.reviewers) self.post_form(submission) self.assertCountEqual(submission.reviewers.all(), []) def test_lead_can_remove_some_staff_and_reviewers_for_proposal(self): - staff = StaffFactory.create_batch(4) - reviewers = ReviewerFactory.create_batch(4) + submission = InvitedToProposalFactory(lead=self.user, reviewers=self.staff + self.reviewers) + self.assertCountEqual(submission.reviewers.all(), self.staff + self.reviewers) - submission = InvitedToProposalFactory(lead=self.user, reviewers=staff + reviewers) - self.assertCountEqual(submission.reviewers.all(), staff + reviewers) + self.post_form(submission, self.staff[0:2], self.reviewers[0:2]) - self.post_form(submission, staff[0:2], reviewers[0:2]) - - self.assertCountEqual(submission.reviewers.all(), staff[0:2] + reviewers[0:2]) + self.assertCountEqual(submission.reviewers.all(), self.staff[0:2] + self.reviewers[0:2]) def test_staff_can_add_staff_single(self): submission = ApplicationSubmissionFactory() - staff = StaffFactory.create_batch(4) - self.post_form(submission, staff) + self.post_form(submission, self.staff) - self.assertCountEqual(submission.reviewers.all(), staff) + self.assertCountEqual(submission.reviewers.all(), self.staff) def test_staff_can_remove_staff_single(self): - staff = StaffFactory.create_batch(4) - submission = ApplicationSubmissionFactory(reviewers=staff) - self.assertCountEqual(submission.reviewers.all(), staff) + submission = ApplicationSubmissionFactory(reviewers=self.staff) + self.assertCountEqual(submission.reviewers.all(), self.staff) self.post_form(submission, []) @@ -232,21 +223,18 @@ class TestReviewersUpdateView(BaseSubmissionViewTestCase): def test_staff_cant_add_reviewers_proposal(self): submission = ApplicationSubmissionFactory() - reviewers = ReviewerFactory.create_batch(4) - self.post_form(submission, reviewers=reviewers) + self.post_form(submission, reviewers=self.reviewers) self.assertCountEqual(submission.reviewers.all(), []) def test_staff_cant_remove_reviewers_proposal(self): - reviewers = ReviewerFactory.create_batch(4) - - submission = ApplicationSubmissionFactory(reviewers=reviewers) - self.assertCountEqual(submission.reviewers.all(), reviewers) + submission = ApplicationSubmissionFactory(reviewers=self.reviewers) + self.assertCountEqual(submission.reviewers.all(), self.reviewers) self.post_form(submission, reviewers=[]) - self.assertCountEqual(submission.reviewers.all(), reviewers) + self.assertCountEqual(submission.reviewers.all(), self.reviewers) class TestApplicantSubmissionView(BaseSubmissionViewTestCase): -- GitLab