Commit d84e1f2d by Calen Pennington Committed by Zia Fazal

Remove proxying of resources_fs, and add a unittest that exposes the problem

[PLAT-191]
parent bbd8ce4a
# -*- coding: utf-8 -*-
"""
Test for lms courseware app, module render unit
"""
......@@ -19,6 +18,7 @@ from courseware.module_render import hash_resource
from xblock.field_data import FieldData
from xblock.runtime import Runtime
from xblock.fields import ScopeIds
from xblock.core import XBlock
from xmodule.lti_module import LTIDescriptor
from xmodule.modulestore.django import modulestore
from xmodule.modulestore.tests.django_utils import ModuleStoreTestCase
......@@ -43,6 +43,14 @@ from lms.lib.xblock.runtime import quote_slashes
from xmodule.modulestore import ModuleStoreEnum
class PureXBlock(XBlock):
"""
Pure XBlock to use in tests.
"""
pass
@ddt.ddt
@override_settings(MODULESTORE=TEST_DATA_MIXED_MODULESTORE)
class ModuleRenderTestCase(ModuleStoreTestCase, LoginEnrollmentTestCase):
"""
......@@ -163,6 +171,17 @@ class ModuleRenderTestCase(ModuleStoreTestCase, LoginEnrollmentTestCase):
self.assertEquals(403, response.status_code)
self.assertEquals('Unauthenticated', response.content)
@ddt.data('pure', 'vertical')
@XBlock.register_temp_plugin(PureXBlock, identifier='pure')
def test_rebinding_same_user(self, block_type):
request = self.request_factory.get('')
request.user = self.mock_user
course = CourseFactory()
descriptor = ItemFactory(category=block_type, parent=course)
field_data_cache = FieldDataCache([self.toy_course, descriptor], self.toy_course.id, self.mock_user)
render.get_module_for_descriptor(self.mock_user, request, descriptor, field_data_cache, self.toy_course.id)
render.get_module_for_descriptor(self.mock_user, request, descriptor, field_data_cache, self.toy_course.id)
def test_hash_resource(self):
"""
Ensure that the resource hasher works and does not fail on unicode,
......
......@@ -266,11 +266,3 @@ class LmsModuleSystem(LmsHandlerUrls, LmsCourse, LmsUser, ModuleSystem): # pyli
)
services['fs'] = xblock.reference.plugins.FSService()
super(LmsModuleSystem, self).__init__(**kwargs)
# backward compatibility fix for callers not knowing this is a ModuleSystem v DescriptorSystem
@property
def resources_fs(self):
"""
Return what would be the resources_fs on a DescriptorSystem
"""
return getattr(self, 'filestore', None)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment