def create_badge_class(self, check_course, **kwargs): """ Create a badge class, using a course id if it's relevant to the URL pattern. """ if check_course: return RandomBadgeClassFactory.create(course_id=self.course.location.course_key, **kwargs) return RandomBadgeClassFactory.create(**kwargs)
def create_badge_class(self, check_course, **kwargs): """ Create a badge class, using a course id if it's relevant to the URL pattern. """ if check_course: return RandomBadgeClassFactory.create(course_id=self.course.location.course_key, **kwargs) return RandomBadgeClassFactory.create(**kwargs)
def setUp(self): super(CourseEnrollmentBadgeTest, self).setUp() self.badge_classes = [ RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), ] nums = ['3', '5', '8'] entries = [ ','.join(pair) for pair in zip(nums, [badge.slug for badge in self.badge_classes]) ] enrollment_config = '\r'.join(entries) self.config = CourseEventBadgesConfigurationFactory( courses_enrolled=enrollment_config)
def test_assertions_for_user(self): """ Verify that grabbing all assertions for a user behaves as expected. This function uses object IDs because for some reason Jenkins trips up on its assertCountEqual check here despite the items being equal. """ user = UserFactory() assertions = [BadgeAssertionFactory.create(user=user).id for _i in range(3)] course = CourseFactory.create() course_key = course.location.course_key course_badges = [RandomBadgeClassFactory(course_id=course_key) for _i in range(3)] course_assertions = [ BadgeAssertionFactory.create(user=user, badge_class=badge_class).id for badge_class in course_badges ] assertions.extend(course_assertions) assertions.sort() assertions_for_user = [badge.id for badge in BadgeAssertion.assertions_for_user(user)] assertions_for_user.sort() self.assertEqual(assertions_for_user, assertions) course_scoped_assertions = [ badge.id for badge in BadgeAssertion.assertions_for_user(user, course_id=course_key) ] course_scoped_assertions.sort() self.assertEqual(course_scoped_assertions, course_assertions)
def setUp(self, **kwargs): super(CourseCompletionBadgeTest, self).setUp() self.badge_classes = [ RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), ] nums = ['2', '6', '9'] entries = [ ','.join(pair) for pair in zip(nums, [badge.slug for badge in self.badge_classes]) ] completed_config = '\r'.join(entries) self.config = CourseEventBadgesConfigurationFactory.create( courses_completed=completed_config) self.config.clean_fields()
def setUp(self): super(CourseGroupBadgeTest, self).setUp() self.badge_classes = [ RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), RandomBadgeClassFactory(issuing_component='openedx__course'), ] self.courses = [] for _badge_class in self.badge_classes: self.courses.append( [CourseFactory().location.course_key for _i in range(3)]) lines = [ badge_class.slug + ',' + ','.join([unicode(course_key) for course_key in keys]) for badge_class, keys in zip(self.badge_classes, self.courses) ] config = '\r'.join(lines) self.config = CourseEventBadgesConfigurationFactory( course_groups=config) self.config_map = dict(zip(self.badge_classes, self.courses))