Ejemplo n.º 1
0
def update_credit_course_requirements(course_id):  # pylint: disable=invalid-name
    """
    Updates course requirements table for a course.

     Args:
        course_id(str): A string representation of course identifier

    Returns:
        None

    """
    try:
        course_key = CourseKey.from_string(course_id)
        is_credit_course = CreditCourse.is_credit_course(course_key)
        if is_credit_course:
            requirements = _get_course_credit_requirements(course_key)
            set_credit_requirements(course_key, requirements)
    except (InvalidKeyError, ItemNotFoundError,
            InvalidCreditRequirements) as exc:
        LOGGER.error('Error on adding the requirements for course %s - %s',
                     course_id, unicode(exc))
        raise update_credit_course_requirements.retry(args=[course_id],
                                                      exc=exc)
    else:
        LOGGER.info('Requirements added for course %s', course_id)
Ejemplo n.º 2
0
def update_course_requirements(course_id):
    """ Updates course requirements table for a course.

     Args:
        course_id(str): A string representation of course identifier

    Returns:
        None
    """
    try:
        course_key = CourseKey.from_string(course_id)
        is_credit_course = CreditCourse.is_credit_course(course_key)
        if is_credit_course:
            course = modulestore().get_course(course_key)
            requirements = [
                {
                    "namespace": "grade",
                    "name": "grade",
                    "criteria": {
                        "min_grade": get_min_grade_for_credit(course)
                    }
                }
            ]
            set_credit_requirements(course_key, requirements)
    except (InvalidKeyError, ItemNotFoundError, InvalidCreditRequirements) as exc:
        LOGGER.error('Error on adding the requirements for course %s - %s', course_id, unicode(exc))
        raise update_course_requirements.retry(args=[course_id], exc=exc)
    else:
        LOGGER.info('Requirements added for course %s', course_id)
Ejemplo n.º 3
0
def update_course_requirements(course_id):
    """ Updates course requirements table for a course.

     Args:
        course_id(str): A string representation of course identifier

    Returns:
        None
    """
    try:
        course_key = CourseKey.from_string(course_id)
        is_credit_course = CreditCourse.is_credit_course(course_key)
        if is_credit_course:
            course = modulestore().get_course(course_key)
            requirements = [{
                "namespace": "grade",
                "name": "grade",
                "criteria": {
                    "min_grade": get_min_grade_for_credit(course)
                }
            }]
            set_credit_requirements(course_key, requirements)
    except (InvalidKeyError, ItemNotFoundError,
            InvalidCreditRequirements) as exc:
        LOGGER.error('Error on adding the requirements for course %s - %s',
                     course_id, unicode(exc))
        raise update_course_requirements.retry(args=[course_id], exc=exc)
    else:
        LOGGER.info('Requirements added for course %s', course_id)
Ejemplo n.º 4
0
def is_credit_course(course_key):
    """
    Check whether the course has been configured for credit.

    Args:
        course_key (CourseKey): Identifier of the course.

    Returns:
        bool: True iff this is a credit course.

    """
    return CreditCourse.is_credit_course(course_key=course_key)
Ejemplo n.º 5
0
def is_credit_course(course_key):
    """
    Check whether the course has been configured for credit.

    Args:
        course_key (CourseKey): Identifier of the course.

    Returns:
        bool: True iff this is a credit course.

    """
    return CreditCourse.is_credit_course(course_key=course_key)
Ejemplo n.º 6
0
def update_credit_course_requirements(course_id):
    """
    Updates course requirements table for a course.

     Args:
        course_id(str): A string representation of course identifier

    Returns:
        None

    """
    try:
        course_key = CourseKey.from_string(course_id)
        is_credit_course = CreditCourse.is_credit_course(course_key)
        if is_credit_course:
            requirements = _get_course_credit_requirements(course_key)
            set_credit_requirements(course_key, requirements)
    except (InvalidKeyError, ItemNotFoundError, InvalidCreditRequirements) as exc:
        LOGGER.error(u'Error on adding the requirements for course %s - %s', course_id, six.text_type(exc))
        raise update_credit_course_requirements.retry(args=[course_id], exc=exc)
    else:
        LOGGER.info(u'Requirements added for course %s', course_id)
Ejemplo n.º 7
0
def update_credit_course_requirements(course_id):  # pylint: disable=invalid-name
    """Updates course requirements table for a course.

     Args:
        course_id(str): A string representation of course identifier

    Returns:
        None

    """
    try:
        course_key = CourseKey.from_string(course_id)
        is_credit_course = CreditCourse.is_credit_course(course_key)
        if is_credit_course:
            course = modulestore().get_course(course_key)
            requirements = _get_course_credit_requirements(course)
            set_credit_requirements(course_key, requirements)
    except (InvalidKeyError, ItemNotFoundError, InvalidCreditRequirements) as exc:
        LOGGER.error("Error on adding the requirements for course %s - %s", course_id, unicode(exc))
        raise update_credit_course_requirements.retry(args=[course_id], exc=exc)
    else:
        LOGGER.info("Requirements added for course %s", course_id)
Ejemplo n.º 8
0
 def test_is_credit_course(self, is_credit):
     CreditCourse(course_key=self.course_key, enabled=is_credit).save()
     if is_credit:
         self.assertTrue(CreditCourse.is_credit_course(self.course_key))
     else:
         self.assertFalse(CreditCourse.is_credit_course(self.course_key))
Ejemplo n.º 9
0
 def test_is_credit_course(self, is_credit):
     CreditCourse(course_key=self.course_key, enabled=is_credit).save()
     if is_credit:
         self.assertTrue(CreditCourse.is_credit_course(self.course_key))
     else:
         self.assertFalse(CreditCourse.is_credit_course(self.course_key))
 def test_is_credit_course(self, is_credit):
     CreditCourse(course_key=self.course_key, enabled=is_credit).save()
     if is_credit:
         assert CreditCourse.is_credit_course(self.course_key)
     else:
         assert not CreditCourse.is_credit_course(self.course_key)