diff --git a/stages/tests.py b/stages/tests.py index 3ff496c..1f4705a 100644 --- a/stages/tests.py +++ b/stages/tests.py @@ -213,11 +213,17 @@ tél. 032 886 33 00 def test_print_ede_expert_compensation(self): st = Student.objects.get(first_name="Albin") + url = reverse('examination-compensation', args=[st.pk]) + self.client.login(username='me', password='mepassword') + response = self.client.post(url, follow=True) + self.assertContains(response, "Toutes les informations ne sont pas disponibles") + st.expert = CorpContact.objects.get(last_name="Horner") + st.internal_expert = Teacher.objects.get(last_name="Caux") st.date_exam = datetime(2018, 6, 28, 12, 00) + st.room = "B123" st.save() self.client.login(username='me', password='mepassword') - url = reverse('examination-compensation', args=[st.pk]) response = self.client.post(url, follow=True) self.assertEqual( response['Content-Disposition'], diff --git a/stages/views.py b/stages/views.py index dc57d90..bfd9518 100644 --- a/stages/views.py +++ b/stages/views.py @@ -933,6 +933,9 @@ def print_examination_compensation_form(request, pk): travail de diplôme """ student = Student.objects.get(pk=pk) + if not student.is_examination_valid: + messages.error(request, "Toutes les informations ne sont pas disponibles pour la lettre à l’expert!") + return redirect(reverse("admin:stages_student_change", args=(student.pk,))) pdf = ExaminationCompensationPdfForm(student) pdf.produce()