Example #1
0
def create_some_learner_data():
    """
    Just create a lil' bit-o-data of each type, to populate the table.
    """
    user = CreateStudentMixin.create_student()
    attempt_states = (  # (name, streak_progress, attempt_count)
        ("not started", 0, 0),
        ("completed", 100, 15),
        ("attempted", 50, 10),
        ("struggling", 30, 25),
    )
    exercises = get_random_content(kinds=["Exercise"], limit=len(attempt_states))  # Important they are *distinct*
    for state in attempt_states:
        exercise = exercises.pop()
        log, created = ExerciseLog.objects.get_or_create(exercise_id=exercise.get("id"), user=user)
        if "not started" != state[0]:
            log.streak_progress, log.attempts = state[1:]
            for i in range(0, log.attempts):
                AttemptLog.objects.get_or_create(
                    exercise_id=exercise.get("id"),
                    user=user,
                    seed=i,
                    timestamp=datetime.datetime.now()
                )
            log.latest_activity_timestamp = datetime.datetime.now()
            log.save()
Example #2
0
def impl(context):
    for f in FacilityUser.objects.all():
        f.soft_delete()
    name = 0
    while FacilityUser.objects.count() < 3:
        context.facility = CreateStudentMixin.create_student(username=str(name))
        name += 1
Example #3
0
def create_some_learner_data():
    """
    Just create a lil' bit-o-data of each type, to populate the table.
    """
    user = CreateStudentMixin.create_student()
    attempt_states = (  # (name, streak_progress, attempt_count)
        ("not started", 0, 0),
        ("completed", 100, 15),
        ("attempted", 50, 10),
        ("struggling", 30, 25),
    )
    exercises = random.sample(
        get_exercise_cache().keys(),
        len(attempt_states))  # Important they are *distinct*
    for state in attempt_states:
        exercise = exercises.pop()
        log, created = ExerciseLog.objects.get_or_create(exercise_id=exercise,
                                                         user=user)
        if "not started" != state[0]:
            log.streak_progress, log.attempts = state[1:]
            for i in range(0, log.attempts):
                AttemptLog.objects.get_or_create(
                    exercise_id=exercise,
                    user=user,
                    seed=i,
                    timestamp=datetime.datetime.now())
            log.latest_activity_timestamp = datetime.datetime.now()
            log.save()
Example #4
0
def impl(context):
    for f in FacilityUser.objects.all():
        f.soft_delete()
    name = 0
    while FacilityUser.objects.count() < 3:
        context.facility = CreateStudentMixin.create_student(
            username=str(name))
        name += 1
Example #5
0
def impl(context, learner, progress_verbs, exercise):
    user = CreateStudentMixin.create_student(username=learner)
    if not progress_verbs == "not started":
        log, created = ExerciseLog.objects.get_or_create(exercise_id=exercise, user=user)
        if progress_verbs == "completed":
            log.streak_progress = 100
            log.attempts = 15
        elif progress_verbs == "attempted":
            log.streak_progress = 50
            log.attempts = 10
        elif progress_verbs == "struggling":
            log.streak_progress = 30
            log.attempts = 25
        for i in range(0, log.attempts):
            attempt_log, created = AttemptLog.objects.get_or_create(exercise_id=exercise, user=user, seed=i, timestamp=datetime.datetime.now())
        log.latest_activity_timestamp = datetime.datetime.now()
        log.save()
Example #6
0
def impl(context, learner, progress_verbs, exercise):
    user = CreateStudentMixin.create_student(username=learner)
    if not progress_verbs == "not started":
        log, created = ExerciseLog.objects.get_or_create(exercise_id=exercise,
                                                         user=user)
        if progress_verbs == "completed":
            log.streak_progress = 100
            log.attempts = 15
        elif progress_verbs == "attempted":
            log.streak_progress = 50
            log.attempts = 10
        elif progress_verbs == "struggling":
            log.streak_progress = 30
            log.attempts = 25
        for i in range(0, log.attempts):
            attempt_log, created = AttemptLog.objects.get_or_create(
                exercise_id=exercise,
                user=user,
                seed=i,
                timestamp=datetime.datetime.now())
        log.latest_activity_timestamp = datetime.datetime.now()
        log.save()
Example #7
0
def impl(context):
    context.user = CreateStudentMixin.create_student()
    context.password = CreateStudentMixin.DEFAULTS["password"]
Example #8
0
def impl(context):
    context.user = CreateStudentMixin.create_student()
    context.password = CreateStudentMixin.DEFAULTS["password"]