vbv/server/vbv_lernwelt/dashboard/tests/graphql/test_dashboard.py

44 lines
1.3 KiB
Python

from graphene_django.utils import GraphQLTestCase
from vbv_lernwelt.dashboard.tests.graphql.utils import (
create_course,
create_course_session,
create_user,
)
class DashboardTestCase(GraphQLTestCase):
GRAPHQL_URL = "/server/graphql/"
def test_course_statistics_id(self):
# GIVEN
# TODO: Give this guy the right permissions, once we have them
supervisor = create_user("supervisor")
course_1, _ = create_course("Test Course 1")
course_2, _ = create_course("Test Course 2")
create_course_session(course=course_1, title="Test Course 1 Session")
create_course_session(course=course_2, title="Test Course 2 Session")
self.client.force_login(supervisor)
query = f"""query($course_id: ID!) {{
course_statistics(course_id: $course_id) {{
course_id
}}
}}
"""
variables = {"course_id": str(course_2.id)}
# WHEN
response = self.query(query, variables=variables)
# THEN
self.assertResponseNoErrors(response)
course_statistics = response.json()["data"]["course_statistics"]
self.assertEqual(len(course_statistics), 1)
self.assertEqual(course_statistics[0]["course_id"], str(course_2.id))