def test_case_mutliple_students_offer_enrollments(self): students = [StudentFactory() for _ in range(10)] offer_enrollments = [ OfferEnrollmentFactory( student=student, offer_year=self.offer_year_calendar_deliberation.offer_year) for student in students ] session_exam_deadlines = [ SessionExamDeadlineFactory( offer_enrollment=offer_enrollment, number_session=self.nb_session, deliberation_date=self.offer_year_calendar_deliberation. end_date, deadline=scores_encodings_deadline._one_day_before( self.offer_year_calendar_deliberation.end_date), deadline_tutor=0) for offer_enrollment in offer_enrollments ] new_global_submission_date = self.offer_year_calendar_deliberation.end_date - timedelta( days=20) self.offer_year_calendar_deliberation.end_date = new_global_submission_date self.offer_year_calendar_deliberation.save() persistent_session_exams = SessionExamDeadline.objects.filter( pk__in=[obj.id for obj in session_exam_deadlines]) for obj in persistent_session_exams: self._assert_date_equal( obj.deadline, scores_encodings_deadline._one_day_before( new_global_submission_date))
def test_case_student_deliberation_date_lt_global_submission_date(self): new_student_delibe_date = self.ac_score_exam_submission.end_date - timedelta( days=5) self.sess_exam_dealine.deliberation_date = new_student_delibe_date self.sess_exam_dealine.save() self._assert_date_equal( self.sess_exam_dealine.deadline, scores_encodings_deadline._one_day_before(new_student_delibe_date))
def test_case_offer_year_deliberation_lt_global_submission_date(self): new_offer_year_delibe_date = self.ac_score_exam_submission.end_date - timedelta( days=5) self.offer_year_calendar_deliberation.end_date = new_offer_year_delibe_date self.offer_year_calendar_deliberation.save() self._assert_date_equal( self._get_persistent_session_exam_deadline().deadline, scores_encodings_deadline._one_day_before( new_offer_year_delibe_date))
def test_case_student_deliberation_date_lt_offer_year_deliberation_date( self): offer_year_delibe_date = self.offer_year_calendar_deliberation.end_date self._change_student_deliberation_date(offer_year_delibe_date - timedelta(days=5)) self.assertEqual( self._get_persistent_session_exam_deadline().deadline, scores_encodings_deadline._one_day_before( self.sess_exam_dealine.deliberation_date))
def _load_one_student_session_exam_deadline(self): off_enrol = OfferEnrollmentFactory( offer_year=self.offer_year_calendar_deliberation.offer_year) self.sess_exam_dealine = SessionExamDeadlineFactory( offer_enrollment=off_enrol, deliberation_date=None, deadline=scores_encodings_deadline._one_day_before( self.academic_calendar_deliberation.end_date), deadline_tutor=0, number_session=self.nb_session)
def test_case_tutor_scores_submission_date_gt_scores_encodings_end_date( self): scores_encodings_end_date = self.ac_score_exam_submission.end_date self._create_tutor_scores_submission_end_date( scores_encodings_end_date + timedelta(days=5)) self._assert_date_equal( self._get_persistent_session_exam_deadline(). deadline_tutor_computed, scores_encodings_deadline._one_day_before( self.ac_score_exam_submission.end_date))
def test_case_tutor_scores_submission_date_gt_student_deliberation_date( self): delibe_date = self.offer_year_calendar_deliberation.end_date - timedelta( days=10) self._change_student_deliberation_date(delibe_date) self._create_tutor_scores_submission_end_date(delibe_date + timedelta(days=5)) self.assertEqual( self._get_persistent_session_exam_deadline(). deadline_tutor_computed, scores_encodings_deadline._one_day_before(delibe_date))
def test_case_mutliple_students_offer_enrollments(self): students = [StudentFactory() for _ in range(10)] offer_enrollments = [ OfferEnrollmentFactory(student=student, offer_year=self.offer_year_calendar_deliberation.offer_year) for student in students ] session_exam_deadlines = [ SessionExamDeadlineFactory(offer_enrollment=offer_enrollment, number_session=self.nb_session, deliberation_date=self.offer_year_calendar_deliberation.end_date, deadline=scores_encodings_deadline._one_day_before(self.offer_year_calendar_deliberation.end_date), deadline_tutor=0) for offer_enrollment in offer_enrollments ] new_global_submission_date = self.offer_year_calendar_deliberation.end_date - timedelta(days=20) self.offer_year_calendar_deliberation.end_date = new_global_submission_date self.offer_year_calendar_deliberation.save() persistent_session_exams = SessionExamDeadline.objects.filter(pk__in=[obj.id for obj in session_exam_deadlines]) for obj in persistent_session_exams: self._assert_date_equal(obj.deadline, scores_encodings_deadline._one_day_before(new_global_submission_date))
def setUp(self): self.offer_year_calendar_deliberation = OfferYearCalendarFactory( academic_calendar=self.academic_calendar_deliberation, offer_year=self.off_year, start_date=self.academic_calendar_deliberation.start_date, end_date=self.academic_calendar_deliberation.end_date, education_group_year=self.education_group_year ) off_enrol = OfferEnrollmentFactory(offer_year=self.offer_year_calendar_deliberation.offer_year) self.sess_exam_dealine = SessionExamDeadlineFactory(offer_enrollment=off_enrol, deliberation_date=None, deadline=scores_encodings_deadline._one_day_before( self.academic_calendar_deliberation.end_date), deadline_tutor=0, number_session=self.nb_session) self.ac_score_exam_submission = AcademicCalendarFactory( academic_year=self.academic_year, reference=academic_calendar_type.SCORES_EXAM_SUBMISSION, start_date=self.academic_year.start_date, end_date=self.academic_year.end_date, ) SessionExamCalendarFactory( academic_calendar=self.ac_score_exam_submission, number_session=self.nb_session )
def _load_one_student_session_exam_deadline(self): off_enrol = OfferEnrollmentFactory(offer_year=self.offer_year_calendar_deliberation.offer_year) self.sess_exam_dealine = SessionExamDeadlineFactory(offer_enrollment=off_enrol, deliberation_date=None, deadline=scores_encodings_deadline._one_day_before(self.academic_calendar_deliberation.end_date), deadline_tutor=0, number_session=self.nb_session)
def test_case_offer_year_deliberation_lt_global_submission_date(self): new_offer_year_delibe_date = self.ac_score_exam_submission.end_date - timedelta(days=5) self.offer_year_calendar_deliberation.end_date = new_offer_year_delibe_date self.offer_year_calendar_deliberation.save() self._assert_date_equal(self._get_persistent_session_exam_deadline().deadline, scores_encodings_deadline._one_day_before(new_offer_year_delibe_date))
def test_case_student_deliberation_date_lt_global_submission_date(self): new_student_delibe_date = self.ac_score_exam_submission.end_date - timedelta(days=5) self.sess_exam_dealine.deliberation_date = new_student_delibe_date self.sess_exam_dealine.save() self._assert_date_equal(self.sess_exam_dealine.deadline, scores_encodings_deadline._one_day_before(new_student_delibe_date))
def test_case_student_deliberation_date_lt_offer_year_deliberation_date(self): offer_year_delibe_date = self.offer_year_calendar_deliberation.end_date self._change_student_deliberation_date(offer_year_delibe_date - timedelta(days=5)) self.assertEqual(self._get_persistent_session_exam_deadline().deadline, scores_encodings_deadline._one_day_before(self.sess_exam_dealine.deliberation_date))
def test_case_tutor_scores_submission_date_gt_scores_encodings_end_date(self): scores_encodings_end_date = self.ac_score_exam_submission.end_date self._create_tutor_scores_submission_end_date(scores_encodings_end_date + timedelta(days=5)) self._assert_date_equal(self._get_persistent_session_exam_deadline().deadline_tutor_computed, scores_encodings_deadline._one_day_before(self.ac_score_exam_submission.end_date))
def test_case_tutor_scores_submission_date_gt_student_deliberation_date(self): delibe_date = self.offer_year_calendar_deliberation.end_date - timedelta(days=10) self._change_student_deliberation_date(delibe_date) self._create_tutor_scores_submission_end_date(delibe_date + timedelta(days=5)) self.assertEqual(self._get_persistent_session_exam_deadline().deadline_tutor_computed, scores_encodings_deadline._one_day_before(delibe_date))