Create `create_course_uk_de_completion_data` with algo

This commit is contained in:
Daniel Egger 2023-05-19 13:52:13 +02:00
parent 872657634b
commit 4fb534aa25
2 changed files with 53 additions and 771 deletions

View File

@ -16,6 +16,7 @@ log.debug("LearningContentMediaLibraryBlock.vue created");
:learning-content-type="props.content.content_type"
>
<div class="container-medium">
<!-- eslint-disable vue/no-v-html -->
<p class="text-large my-4 lg:my-8" v-html="props.content.description"></p>
<a
:href="`${props.content.content_url}`"

View File

@ -1,5 +1,6 @@
import random
import djclick as click
from wagtail.models import Page
from vbv_lernwelt.assignment.creators.create_assignments import create_uk_assignments
from vbv_lernwelt.assignment.models import Assignment
@ -11,6 +12,7 @@ from vbv_lernwelt.competence.create_uk_competence_profile import (
from vbv_lernwelt.competence.create_vv_new_competence_profile import (
create_vv_new_competence_profile,
)
from vbv_lernwelt.competence.models import PerformanceCriteria
from vbv_lernwelt.core.create_default_users import default_users
from vbv_lernwelt.core.models import User
from vbv_lernwelt.course.consts import (
@ -27,7 +29,7 @@ from vbv_lernwelt.course.management.commands.create_uk_course import (
create_uk_fr_learning_path,
create_uk_learning_path,
)
from vbv_lernwelt.course.models import CourseSession, CourseSessionUser
from vbv_lernwelt.course.models import CoursePage, CourseSession, CourseSessionUser
from vbv_lernwelt.course.services import mark_course_completion
from vbv_lernwelt.feedback.creators.create_demo_feedback import create_feedback
from vbv_lernwelt.learnpath.create_vv_new_learning_path import (
@ -35,6 +37,7 @@ from vbv_lernwelt.learnpath.create_vv_new_learning_path import (
)
from vbv_lernwelt.learnpath.models import (
Circle,
LearningContent,
LearningContentAssignment,
LearningContentAttendanceDay,
)
@ -65,9 +68,9 @@ def command(course):
if COURSE_UK in course:
create_course_uk_de()
# create_course_uk_de_completion_data(
# CourseSession.objects.get(title="Bern 2023 a")
# )
create_course_uk_de_completion_data(
CourseSession.objects.get(title="Bern 2023 a")
)
create_course_uk_de_assignment_completion_data(
assignment=Assignment.objects.get(
slug="überbetriebliche-kurse-assignment-überprüfen-einer-motorfahrzeugs-versicherungspolice"
@ -334,772 +337,50 @@ def create_course_uk_de_assignment_completion_data(assignment, course_session, u
def create_course_uk_de_completion_data(course_session):
# initial completion data
for slug, status, email in [
(
"überbetriebliche-kurse-competence-crit-c3pvük5-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük2-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük1-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-reflexion",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük4-allgemein",
"fail",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-kickoff-ls-training",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük3-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-ls-transfer",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-reflexion",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük2-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-training",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük1-allgemein",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük7-allgemein",
"fail",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük11-allgemein",
"fail",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-feedback",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick",
"success",
"michael.meier@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük5-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük2-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük1-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-reflexion",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük4-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-kickoff-ls-training",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük3-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-ls-transfer",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-reflexion",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük2-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-training",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük1-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük7-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük11-allgemein",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-unterlagen-für-den-unterricht",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-wissens-und-verständnisfragen",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-mediathek-haushalt-teil-2",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"lina.egger@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lu-vorbereitung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük5-allgemein",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-selbsteinschätzung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-unterlagen-für-den-unterricht",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük2-allgemein",
"fail",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-mediathek",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-wissens-und-verständnisfragen",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-e4pvük1-allgemein",
"fail",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-reflexion",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük4-allgemein",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-kickoff-ls-training",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-transfer",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük3-allgemein",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-basis-lc-feedback",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük2-allgemein",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-mediathek-fahrzeug",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-wissens-und-verständnisfragen",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-ls-training",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-d2pvük1-allgemein",
"fail",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-verschaffe-dir-einen-überblick",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük7-allgemein",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-competence-crit-c3pvük11-allgemein",
"fail",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-reflexion",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-feedback",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-wissens-und-verständnisfragen",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-fahrzeug-lc-verschaffe-dir-einen-überblick",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-unterlagen-für-den-unterricht",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-mediathek-haushalt-teil-1",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-1-lc-selbsteinschätzung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-vorbereitungsauftrag",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-verschaffe-dir-einen-überblick",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-reflexion",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-selbsteinschätzung",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-feedback",
"success",
"evelyn.schmid@example.com",
),
(
"überbetriebliche-kurse-lp-circle-haushalt-teil-2-lc-mediathek-haushalt-teil-2",
"success",
"evelyn.schmid@example.com",
),
]:
circles = Circle.objects.filter(slug__startswith="überbetriebliche-kurse-lp-circle")
for circle in circles:
for index, lc in enumerate(circle.get_descendants().type(LearningContent)):
mark_course_completion(
str(lc.translation_key),
User.objects.get(email="lina.egger@example.com"),
course_session=course_session,
completion_status="success",
)
random_number = random.randint(1, 3)
if index % random_number == 0:
mark_course_completion(
str(lc.translation_key),
User.objects.get(email="michael.meier@example.com"),
course_session=course_session,
completion_status="success",
)
performance_criteria = (
CoursePage.objects.get(course_id=COURSE_UK)
.get_descendants()
.type(PerformanceCriteria)
)
for index, pc in enumerate(performance_criteria):
mark_course_completion(
Page.objects.get(slug=slug).translation_key,
User.objects.get(email=email),
str(pc.translation_key),
User.objects.get(email="lina.egger@example.com"),
course_session=course_session,
completion_status=status,
completion_status="success",
)
random_number = random.randint(1, 4)
if index % random_number == 0:
mark_course_completion(
str(pc.translation_key),
User.objects.get(email="michael.meier@example.com"),
course_session=course_session,
completion_status="success",
)
if index % random_number == 1:
mark_course_completion(
str(pc.translation_key),
User.objects.get(email="michael.meier@example.com"),
course_session=course_session,
completion_status="fail",
)