Properly save and restore settings.MODULESTORE, and clear at django._MODULESTORES at the end of the test

This commit is contained in:
Calen Pennington
2013-04-11 15:00:12 -04:00
parent d7796f4d47
commit 13a485076f

View File

@@ -52,15 +52,13 @@ class ModuleStoreTestCase(TestCase):
# Use a uuid to differentiate
# the mongo collections on jenkins.
cls.orig_modulestore = copy.deepcopy(settings.MODULESTORE)
test_modulestore = cls.orig_modulestore
if 'direct' not in test_modulestore:
test_modulestore['direct'] = test_modulestore['default']
if 'direct' not in settings.MODULESTORE:
settings.MODULESTORE['direct'] = settings.MODULESTORE['default']
test_modulestore['default']['OPTIONS']['collection'] = 'modulestore_%s' % uuid4().hex
test_modulestore['direct']['OPTIONS']['collection'] = 'modulestore_%s' % uuid4().hex
xmodule.modulestore.django._MODULESTORES = {}
settings.MODULESTORE['default']['OPTIONS']['collection'] = 'modulestore_%s' % uuid4().hex
settings.MODULESTORE['direct']['OPTIONS']['collection'] = 'modulestore_%s' % uuid4().hex
xmodule.modulestore.django._MODULESTORES.clear()
settings.MODULESTORE = test_modulestore
print settings.MODULESTORE
TestCase.setUpClass()
@@ -75,6 +73,8 @@ class ModuleStoreTestCase(TestCase):
modulestore = xmodule.modulestore.django.modulestore()
modulestore.collection.drop()
xmodule.modulestore.django._MODULESTORES.clear()
# Restore the original modulestore settings
settings.MODULESTORE = cls.orig_modulestore