59 lines
1.9 KiB
Python
59 lines
1.9 KiB
Python
"""
|
|
Tests for deprecated xblocks in XBlockDisableConfig.
|
|
"""
|
|
import ddt
|
|
|
|
from mock import patch
|
|
from django.test import TestCase
|
|
from xblock_django.models import XBlockDisableConfig
|
|
|
|
|
|
@ddt.ddt
|
|
class XBlockDisableConfigTestCase(TestCase):
|
|
"""
|
|
Tests for the DjangoXBlockUserService.
|
|
"""
|
|
def setUp(self):
|
|
super(XBlockDisableConfigTestCase, self).setUp()
|
|
|
|
# Initialize the deprecated modules settings with empty list
|
|
XBlockDisableConfig.objects.create(
|
|
disabled_blocks='', enabled=True
|
|
)
|
|
|
|
@ddt.data(
|
|
('poll', ['poll']),
|
|
('poll survey annotatable textannotation', ['poll', 'survey', 'annotatable', 'textannotation']),
|
|
('', [])
|
|
)
|
|
@ddt.unpack
|
|
def test_deprecated_blocks_splitting(self, xblocks, expected_result):
|
|
"""
|
|
Tests that it correctly splits the xblocks defined in field.
|
|
"""
|
|
XBlockDisableConfig.objects.create(
|
|
disabled_create_blocks=xblocks, enabled=True
|
|
)
|
|
|
|
self.assertEqual(
|
|
XBlockDisableConfig.disabled_create_block_types(), expected_result
|
|
)
|
|
|
|
@patch('django.conf.settings.DEPRECATED_ADVANCED_COMPONENT_TYPES', ['poll', 'survey'])
|
|
def test_deprecated_blocks_file(self):
|
|
"""
|
|
Tests that deprecated modules contain entries from settings file DEPRECATED_ADVANCED_COMPONENT_TYPES
|
|
"""
|
|
self.assertEqual(XBlockDisableConfig.disabled_create_block_types(), ['poll', 'survey'])
|
|
|
|
@patch('django.conf.settings.DEPRECATED_ADVANCED_COMPONENT_TYPES', ['poll', 'survey'])
|
|
def test_deprecated_blocks_file_and_config(self):
|
|
"""
|
|
Tests that deprecated types defined in both settings and config model are read.
|
|
"""
|
|
XBlockDisableConfig.objects.create(
|
|
disabled_create_blocks='annotatable', enabled=True
|
|
)
|
|
|
|
self.assertEqual(XBlockDisableConfig.disabled_create_block_types(), ['annotatable', 'poll', 'survey'])
|