diff --git a/election/tests.py b/election/tests.py index 4d85db18..a2bd3f2f 100644 --- a/election/tests.py +++ b/election/tests.py @@ -6,23 +6,23 @@ from django.conf import settings from datetime import date, datetime from core.models import User, Group -from election.models import Election, Role, ElectionList, Candidature, Vote +from election.models import Election -class MainElection(): - election = Election.objects.all().first() - public_group = Group.objects.get(id=settings.SITH_GROUP_PUBLIC_ID) - subscriber_group = Group.objects.get(name=settings.SITH_MAIN_MEMBERS_GROUP) - ae_board_group = Group.objects.get(name=settings.SITH_MAIN_BOARD_GROUP) - sli = User.objects.get(username='sli') - subscriber = User.objects.get(username='subscriber') - public = User.objects.get(username='public') - - -class ElectionDetailTest(MainElection, TestCase): +class MainElection(TestCase): def setUp(self): call_command("populate") + self.election = Election.objects.all().first() + self.public_group = Group.objects.get(id=settings.SITH_GROUP_PUBLIC_ID) + self.subscriber_group = Group.objects.get(name=settings.SITH_MAIN_MEMBERS_GROUP) + self.ae_board_group = Group.objects.get(name=settings.SITH_MAIN_BOARD_GROUP) + self.sli = User.objects.get(username='sli') + self.subscriber = User.objects.get(username='subscriber') + self.public = User.objects.get(username='public') + + +class ElectionDetailTest(MainElection): def test_permission_denied(self): self.election.view_groups.remove(self.public_group) self.election.view_groups.add(self.subscriber_group) @@ -47,3 +47,14 @@ class ElectionDetailTest(MainElection, TestCase): self.assertFalse(response_get.status_code == 403) self.assertFalse(response_post.status_code == 403) self.assertTrue('La roue tourne' in str(response_get.content)) + + +class ElectionUpdateView(MainElection): + def test_permission_denied(self): + self.client.login(username=self.subscriber.username, password='plop') + response_get = self.client.get(reverse('election:update', + args=str(self.election.id))) + response_post = self.client.post(reverse('election:update', + args=str(self.election.id))) + self.assertTrue(response_get.status_code == 403) + self.assertTrue(response_post.status_code == 403)