vbv/server/vbv_lernwelt/learnpath/tests/test_api.py

32 lines
1.3 KiB
Python

from rest_framework.test import APITestCase
from vbv_lernwelt.core.admin import User
from vbv_lernwelt.core.create_default_users import create_default_users
from vbv_lernwelt.core.tests.helpers import create_locales_for_wagtail
from vbv_lernwelt.learnpath.models import LearningPath
from vbv_lernwelt.learnpath.tests.create_simple_test_learning_path import create_simple_test_learning_path
class TestRetrieveLearingPathContents(APITestCase):
def setUp(self) -> None:
create_locales_for_wagtail()
create_default_users()
create_simple_test_learning_path()
self.user = User.objects.get(username='student')
self.client.login(username='student', password='test')
def test_get_learnpathPage(self):
learning_path = LearningPath.objects.get(slug='unit-test-lernpfad')
response = self.client.get('/api/learnpath/page/unit-test-lernpfad/')
print(response)
self.assertEqual(response.status_code, 200)
data = response.json()
# print(data)
self.assertEqual(learning_path.title, data['title'])
# topic and circle
self.assertEqual(4, len(data['children']))
# circle "unit-test-circle" contents
self.assertEqual(13, len(data['children'][3]['children']))