def test_retire_enrollment(self): """ Test basic retirement of program enrollment """ enrollment = self.create_enrollment_and_history() _listen_for_lms_retire(sender=self.__class__, user=enrollment.user) self.assert_enrollment_and_history_retired(enrollment)
def test_retire_enrollment_multiple(self): """ Test basic retirement of user with multiple program enrollments """ enrollment = self.create_enrollment_and_history() enrollment2 = self.create_enrollment_and_history(user=enrollment.user) enrollment3 = self.create_enrollment_and_history(user=enrollment.user) _listen_for_lms_retire(sender=self.__class__, user=enrollment.user) self.assert_enrollment_and_history_retired(enrollment) self.assert_enrollment_and_history_retired(enrollment2) self.assert_enrollment_and_history_retired(enrollment3)
def test_idempotent(self): """ Tests that running a retirement multiple times does not throw an error """ enrollment = self.create_enrollment_and_history() # Run twice to make sure no errors are raised _listen_for_lms_retire(sender=self.__class__, user=enrollment.user) fake_completed_retirement(enrollment.user) _listen_for_lms_retire(sender=self.__class__, user=enrollment.user) self.assert_enrollment_and_history_retired(enrollment)
def test_success_no_enrollment(self): """ Basic success path for users who have no enrollments, should simply not error """ user = UserFactory() _listen_for_lms_retire(sender=self.__class__, user=user)