chore: adds tests for competence progress (user dashboard)
This commit is contained in:
parent
01db821d6b
commit
c96472dbe6
|
|
@ -2,6 +2,7 @@ from graphene_django.utils import GraphQLTestCase
|
||||||
|
|
||||||
from vbv_lernwelt.assignment.models import AssignmentType
|
from vbv_lernwelt.assignment.models import AssignmentType
|
||||||
from vbv_lernwelt.course.models import CourseSessionUser
|
from vbv_lernwelt.course.models import CourseSessionUser
|
||||||
|
from vbv_lernwelt.course.services import mark_course_completion
|
||||||
from vbv_lernwelt.dashboard.tests.graphql.utils import (
|
from vbv_lernwelt.dashboard.tests.graphql.utils import (
|
||||||
add_course_session_group_supervisor,
|
add_course_session_group_supervisor,
|
||||||
add_course_session_user,
|
add_course_session_user,
|
||||||
|
|
@ -11,6 +12,8 @@ from vbv_lernwelt.dashboard.tests.graphql.utils import (
|
||||||
create_course_session,
|
create_course_session,
|
||||||
create_course_session_group,
|
create_course_session_group,
|
||||||
create_user,
|
create_user,
|
||||||
|
create_circle,
|
||||||
|
create_performance_criteria_page,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -19,7 +22,7 @@ class DashboardTestCase(GraphQLTestCase):
|
||||||
|
|
||||||
def test_course_progress(self):
|
def test_course_progress(self):
|
||||||
# GIVEN
|
# GIVEN
|
||||||
course, _ = create_course("Test Course")
|
course, course_page = create_course("Test Course")
|
||||||
|
|
||||||
cs_1 = create_course_session(
|
cs_1 = create_course_session(
|
||||||
course=course, title="Test Course Session 1", generation=""
|
course=course, title="Test Course Session 1", generation=""
|
||||||
|
|
@ -43,6 +46,7 @@ class DashboardTestCase(GraphQLTestCase):
|
||||||
course_session=cs_3, user=member, role=CourseSessionUser.Role.MEMBER
|
course_session=cs_3, user=member, role=CourseSessionUser.Role.MEMBER
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# setup assignments
|
||||||
create_assignment_completion(
|
create_assignment_completion(
|
||||||
user=member,
|
user=member,
|
||||||
assignment=create_assignment(
|
assignment=create_assignment(
|
||||||
|
|
@ -65,6 +69,29 @@ class DashboardTestCase(GraphQLTestCase):
|
||||||
max_points=40,
|
max_points=40,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# setup competence
|
||||||
|
circle, _ = create_circle(
|
||||||
|
title="How to circle like a pro!", course_page=course_page
|
||||||
|
)
|
||||||
|
|
||||||
|
mark_course_completion(
|
||||||
|
page=create_performance_criteria_page(
|
||||||
|
course=course, course_page=course_page, circle=circle
|
||||||
|
),
|
||||||
|
user=member,
|
||||||
|
course_session=cs_1,
|
||||||
|
completion_status="SUCCESS",
|
||||||
|
)
|
||||||
|
|
||||||
|
mark_course_completion(
|
||||||
|
page=create_performance_criteria_page(
|
||||||
|
course=course, course_page=course_page, circle=circle
|
||||||
|
),
|
||||||
|
user=member,
|
||||||
|
course_session=cs_2,
|
||||||
|
completion_status="FAIL",
|
||||||
|
)
|
||||||
|
|
||||||
self.client.force_login(member)
|
self.client.force_login(member)
|
||||||
|
|
||||||
query = f"""query($course_id: ID!) {{
|
query = f"""query($course_id: ID!) {{
|
||||||
|
|
@ -94,12 +121,13 @@ class DashboardTestCase(GraphQLTestCase):
|
||||||
self.assertResponseNoErrors(response)
|
self.assertResponseNoErrors(response)
|
||||||
|
|
||||||
course_progress = response.json()["data"]["course_progress"]
|
course_progress = response.json()["data"]["course_progress"]
|
||||||
|
|
||||||
self.assertEqual(course_progress["course_id"], str(course.id))
|
self.assertEqual(course_progress["course_id"], str(course.id))
|
||||||
self.assertEqual(course_progress["session_to_continue_id"], str(cs_2.id))
|
self.assertEqual(course_progress["session_to_continue_id"], str(cs_2.id))
|
||||||
|
|
||||||
competence = course_progress["competence"]
|
competence = course_progress["competence"]
|
||||||
# TODO
|
self.assertEqual(competence["total_count"], 2)
|
||||||
|
self.assertEqual(competence["success_count"], 1)
|
||||||
|
self.assertEqual(competence["fail_count"], 1)
|
||||||
|
|
||||||
assignment = course_progress["assignment"]
|
assignment = course_progress["assignment"]
|
||||||
self.assertEqual(assignment["total_count"], 2)
|
self.assertEqual(assignment["total_count"], 2)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue