'For use when the test class has a setUpTestData() method that uses variables
that are setup during setUpClass() of the same test class.
Use it like so:
@classmethod
def setUpClass(cls):
with super(MyTestClass, cls).setUpClassAndTestData():
<all the cls.setUpClass() setup code that performs modulestore setup...>
@classmethod
def setUpTestData(cls):
<all the setup code that creates Django models per test class...>
<these models can use variables (courses) setup in setUpClass() above>'

@classmethod
@contextmanager
def setUpClassAndTestData(cls):

    cls.start_modulestore_isolation()
    (yield)
    super(SharedModuleStoreTestCase, cls).setUpClass()
