def test_delete_all_learning_units_year_case_success_have_attribution_new_without_charge( self): learning_unit_years = self.learning_unit_year_list ly1 = learning_unit_years[1] AttributionNewFactory( learning_container_year=ly1.learning_container_year) request_factory = RequestFactory() request = request_factory.post( reverse(delete_all_learning_units_year, args=[ly1.id])) request.user = self.user setattr(request, 'session', 'session') setattr(request, '_messages', FallbackStorage(request)) response = delete_all_learning_units_year(request, ly1.id) msg_level = [m.level for m in get_messages(request)] msg = [m.message for m in get_messages(request)] self.assertEqual(len(msg), 5) self.assertIn(messages.SUCCESS, msg_level) for y in range(4): self.assertFalse( LearningUnitYear.objects.filter( pk=learning_unit_years[y].pk).exists()) # Check redirection to identification self.assertEqual(response.status_code, 302) self.assertEqual(response.url, reverse('learning_units'))
def test_delete_all_learning_units_year_case_error_start_date(self): learning_unit_years = self.learning_unit_year_list request_factory = RequestFactory() learning_unit_years[1].learning_unit.start_year = 2014 learning_unit_years[1].learning_unit.save() request = request_factory.post( reverse(delete_all_learning_units_year, args=[learning_unit_years[1].id])) request.user = self.user setattr(request, 'session', 'session') setattr(request, '_messages', FallbackStorage(request)) response = delete_all_learning_units_year(request, learning_unit_years[1].id) msg_level = [m.level for m in get_messages(request)] msg = [m.message for m in get_messages(request)] self.assertIn(messages.ERROR, msg_level, msg) for y in range(4): self.assertTrue( LearningUnitYear.objects.filter( pk=learning_unit_years[y].pk).exists()) # Check redirection to identification self.assertEqual(response.status_code, 302) self.assertEqual(response.url, reverse('learning_units'))
def test_delete_all_learning_units_year_method_not_allowed(self): learning_unit_years = self.learning_unit_year_list request_factory = RequestFactory() request = request_factory.get(reverse(delete_all_learning_units_year, args=[learning_unit_years[1].id])) request.user = self.user response = delete_all_learning_units_year(request, learning_unit_years[1].id) self.assertEqual(response.status_code, 405) # Method not allowed
def test_delete_all_learning_units_year_case_error_have_attributionnew_with_charge( self): learning_unit_years = self.learning_unit_year_list ly1 = learning_unit_years[1] attrib_new_1 = AttributionNewFactory( learning_container_year=ly1.learning_container_year) learning_component_year_1 = LearningComponentYearFactory( learning_unit_year=ly1) AttributionChargeNewFactory( attribution=attrib_new_1, learning_component_year=learning_component_year_1) request_factory = RequestFactory() request = request_factory.post( reverse(delete_all_learning_units_year, args=[ly1.id])) request.user = self.user setattr(request, 'session', 'session') setattr(request, '_messages', FallbackStorage(request)) response = delete_all_learning_units_year(request, ly1.id) # Get message from context msg = [m.message for m in get_messages(request)] msg_level = [m.level for m in get_messages(request)] self.assertEqual(len(msg), 1) self.assertIn(messages.ERROR, msg_level) # Check error message subtype = _('The partim') if ly1.is_partim() else _( 'The learning unit') self.assertIn( _("%(subtype)s %(acronym)s is assigned to %(tutor)s for the year %(year)s" ) % { 'subtype': subtype, 'acronym': ly1.acronym, 'tutor': attrib_new_1.tutor, 'year': ly1.academic_year }, msg) # Check that record is not deleted self.assertTrue(LearningUnitYear.objects.filter(pk=ly1.pk).exists()) # Check redirection to identification self.assertEqual(response.status_code, 302) self.assertEqual( response.url, reverse('learning_unit', kwargs={'learning_unit_year_id': ly1.pk}))
def test_delete_all_learning_units_year_case_error_have_enrollment(self): learning_unit_years = self.learning_unit_year_list ly1 = learning_unit_years[1] LearningUnitEnrollmentFactory(learning_unit_year=ly1) request_factory = RequestFactory() request = request_factory.post( reverse(delete_all_learning_units_year, args=[ly1.id])) request.user = self.user setattr(request, 'session', 'session') setattr(request, '_messages', FallbackStorage(request)) response = delete_all_learning_units_year(request, ly1.id) # Get message from context msg = [m.message for m in get_messages(request)] msg_level = [m.level for m in get_messages(request)] self.assertEqual(len(msg), 1) self.assertIn(messages.ERROR, msg_level) # Check error message subtype = _('The partim') if ly1.is_partim() else _( 'The learning unit') self.assertIn( _("There is %(count)d enrollments in %(subtype)s %(acronym)s for the year %(year)s" ) % { 'subtype': subtype, 'acronym': ly1.acronym, 'year': ly1.academic_year, 'count': 1 }, msg) # Check that record is not deleted self.assertTrue(LearningUnitYear.objects.filter(pk=ly1.pk).exists()) # Check redirection to identification self.assertEqual(response.status_code, 302) self.assertEqual( response.url, reverse('learning_unit', kwargs={'learning_unit_year_id': ly1.pk}))