Commit bccae306 by Don Mitchell

Merge pull request #2111 from edx/dhm/drop_contentstore

During testing: drop contentstore when cleaning up modulestore
parents eeb5f812 81a5b363
......@@ -6,21 +6,18 @@ Unit tests for the asset upload endpoint.
#pylint: disable=W0621
#pylint: disable=W0212
from datetime import datetime, timedelta
from datetime import datetime
from io import BytesIO
from pytz import UTC
import json
import re
from unittest import TestCase, skip
from .utils import CourseTestCase
from contentstore.views import assets
from xmodule.contentstore.content import StaticContent, XASSET_LOCATION_TAG
from xmodule.contentstore.content import StaticContent
from xmodule.modulestore import Location
from xmodule.contentstore.django import contentstore
from xmodule.modulestore.django import modulestore
from xmodule.modulestore.xml_importer import import_from_xml
from xmodule.modulestore.django import loc_mapper
from xmodule.modulestore.mongo.base import location_to_query
class AssetsTestCase(CourseTestCase):
......
......@@ -6,6 +6,7 @@ from uuid import uuid4
from django.test import TestCase
from xmodule.modulestore.django import editable_modulestore, \
clear_existing_modulestores
from xmodule.contentstore.django import contentstore
def mixed_store_config(data_dir, mappings):
......@@ -211,17 +212,19 @@ class ModuleStoreTestCase(TestCase):
return updated_course
@staticmethod
def drop_mongo_collection():
def drop_mongo_collections():
"""
If using a Mongo-backed modulestore, drop the collection.
If using a Mongo-backed modulestore & contentstore, drop the collections.
"""
# This will return the mongo-backed modulestore
# even if we're using a mixed modulestore
store = editable_modulestore()
if hasattr(store, 'collection'):
store.collection.drop()
if contentstore().fs_files:
db = contentstore().fs_files.database
db.connection.drop_database(db)
@classmethod
def setUpClass(cls):
......@@ -241,7 +244,7 @@ class ModuleStoreTestCase(TestCase):
Clean up any data stored in Mongo.
"""
# Clean up by flushing the Mongo modulestore
cls.drop_mongo_collection()
cls.drop_mongo_collections()
# Clear out the existing modulestores,
# which will cause them to be re-created
......@@ -257,7 +260,7 @@ class ModuleStoreTestCase(TestCase):
"""
# Flush the Mongo modulestore
ModuleStoreTestCase.drop_mongo_collection()
ModuleStoreTestCase.drop_mongo_collections()
# Call superclass implementation
super(ModuleStoreTestCase, self)._pre_setup()
......@@ -266,7 +269,7 @@ class ModuleStoreTestCase(TestCase):
"""
Flush the ModuleStore after each test.
"""
ModuleStoreTestCase.drop_mongo_collection()
ModuleStoreTestCase.drop_mongo_collections()
# Call superclass implementation
super(ModuleStoreTestCase, self)._post_teardown()
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