from books.factories import ModuleFactory, ChapterFactory from books.models import ContentBlock from core.tests.base_test import SkillboxTestCase CONTENT_BLOCK_QUERY = """ query ContentBlockQuery($slug: String!) { module(slug: $slug) { chapters { id contentBlocks { id title type } } } } """ class ContentBlockTestCase(SkillboxTestCase): def setUp(self) -> None: self.createDefault() self.client = self.get_client() self.slug = 'module' self.module = ModuleFactory(slug=self.slug) self.chapter = ChapterFactory(parent=self.module) self.content_block = ContentBlock( type=ContentBlock.NORMAL, title='Title' ) self.chapter.add_child(instance=self.content_block) def test_content_block(self): result = self.client.execute(CONTENT_BLOCK_QUERY, variables={ "slug": self.slug }) self.assertIsNone(result.errors) module = result.data.get('module') content_block = module['chapters'][0]['contentBlocks'][0] self.assertEqual(content_block['title'], 'Title') self.assertIsNotNone(content_block['type'])