Fix content blocks created by applying a snapshot
This commit is contained in:
parent
b26c9c07f5
commit
9c82dc2bf4
|
|
@ -135,7 +135,8 @@ class ContentBlockSnapshot(ContentBlock):
|
|||
type=self.type,
|
||||
title=self.title,
|
||||
owner=owner,
|
||||
original_creator=self.original_creator
|
||||
original_creator=self.original_creator,
|
||||
user_created=True
|
||||
)
|
||||
self.add_sibling(instance=cb, pos='right')
|
||||
# some wagtail magic
|
||||
|
|
|
|||
|
|
@ -23,6 +23,10 @@ class CreateSnapshotTestCase(SkillboxTestCase):
|
|||
self.assertEqual(content_block['title'], title)
|
||||
self.assertEqual(content_block['hidden'], hidden)
|
||||
|
||||
@property
|
||||
def graphene_client(self):
|
||||
return self.get_client()
|
||||
|
||||
def setUp(self):
|
||||
self.createDefault()
|
||||
self.client = self.get_client()
|
||||
|
|
@ -282,6 +286,42 @@ class CreateSnapshotTestCase(SkillboxTestCase):
|
|||
self.assertTrue(self.skillbox_class.name not in [sc['name'] for sc in cb3['visibleFor']])
|
||||
self.assertTrue(self.skillbox_class.name not in [sc['name'] for sc in cb4['visibleFor']])
|
||||
|
||||
def test_create_apply_view_snapshot(self):
|
||||
result = self.graphene_client.execute(MODULE_QUERY, variables={
|
||||
'slug': self.module.slug
|
||||
})
|
||||
self.assertIsNone(result.get('errors'))
|
||||
chapter = result['data']['module']['chapters'][0]
|
||||
self.assertEqual(len(chapter['contentBlocks']), 4)
|
||||
|
||||
result = self.graphene_client.execute(CREATE_SNAPSHOT_MUTATION, variables={
|
||||
'input': {
|
||||
'module': self.slug,
|
||||
'selectedClass': to_global_id('SchoolClassNode', self.skillbox_class.pk),
|
||||
}
|
||||
})
|
||||
self.assertIsNone(result.get('errors'))
|
||||
snapshot_id = result['data']['createSnapshot']['snapshot']['id']
|
||||
|
||||
teacher2 = User.objects.get(username='teacher2')
|
||||
teacher2_client = self.get_client(user=teacher2)
|
||||
school_class_name = 'second_class'
|
||||
second_class = SchoolClass.objects.get(name=school_class_name)
|
||||
result = teacher2_client.execute(APPLY_SNAPSHOT_MUTATION, variables={
|
||||
'input': {
|
||||
'snapshot': snapshot_id,
|
||||
'selectedClass': to_global_id('SchoolClassNode', second_class.pk),
|
||||
}
|
||||
})
|
||||
self.assertIsNone(result.get('errors'))
|
||||
|
||||
result = self.graphene_client.execute(MODULE_QUERY, variables={
|
||||
'slug': self.module.slug
|
||||
})
|
||||
self.assertIsNone(result.get('errors'))
|
||||
chapter = result['data']['module']['chapters'][0]
|
||||
self.assertEqual(len(chapter['contentBlocks']), 4)
|
||||
|
||||
|
||||
class SnapshotTestCase(SkillboxTestCase):
|
||||
def setUp(self) -> None:
|
||||
|
|
|
|||
Loading…
Reference in New Issue