def test_can_generate_not_verified(self): """ Test handling when the user's id is not verified """ with mock.patch(ID_VERIFIED_METHOD, return_value=False): assert not can_generate_allowlist_certificate( self.user, self.course_run_key)
def test_can_generate_invalidated(self): """ Test handling when user is on the invalidate list """ u = UserFactory() cr = CourseFactory() key = cr.id # pylint: disable=no-member CourseEnrollmentFactory( user=u, course_id=key, is_active=True, mode="verified", ) cert = GeneratedCertificateFactory( user=u, course_id=key, mode=GeneratedCertificate.MODES.verified, status=CertificateStatuses.downloadable ) CertificateWhitelistFactory.create(course_id=key, user=u) CertificateInvalidationFactory.create( generated_certificate=cert, invalidated_by=self.user, active=True ) self.assertFalse(can_generate_allowlist_certificate(u, key))
def test_can_generate_auto_disabled(self): """ Test handling when automatic generation is disabled """ with override_waffle_switch(AUTO_GENERATION_SWITCH, active=False): assert not can_generate_allowlist_certificate( self.user, self.course_run_key)
def test_handle_valid(self): """ Test handling of a valid user/course run combo """ assert can_generate_allowlist_certificate(self.user, self.course_run_key) assert generate_allowlist_certificate_task(self.user, self.course_run_key)
def test_can_generate_not_enrolled(self): """ Test handling when user is not enrolled """ u = UserFactory() cr = CourseFactory() key = cr.id # pylint: disable=no-member CertificateWhitelistFactory.create(course_id=key, user=u) self.assertFalse(can_generate_allowlist_certificate(u, key))
def test_handle_invalid(self): """ Test handling of an invalid user/course run combo """ self.assertFalse( can_generate_allowlist_certificate(self.user, self.course_run_key)) self.assertFalse( generate_allowlist_certificate_task(self.user, self.course_run_key))
def test_can_generate_not_whitelisted(self): """ Test handling when user is not whitelisted """ u = UserFactory() cr = CourseFactory() key = cr.id # pylint: disable=no-member CourseEnrollmentFactory( user=u, course_id=key, is_active=True, mode="verified", ) self.assertFalse(can_generate_allowlist_certificate(u, key))