Use unittest2's module hooks for setting up the django environment.
[htsworkflow.git] / htsworkflow / frontend / inventory / test_inventory.py
index 024a334cb5ad4bc035e8e2a3d8f76aa72c9c50d3..86d37b7cbe7e740468f04df9380ae8fa82c98b35 100644 (file)
@@ -1,7 +1,11 @@
 import RDF
-import unittest
 
 from django.test import TestCase
+from django.test.utils import setup_test_environment, \
+     teardown_test_environment
+from django.db import connection
+from django.conf import settings
+
 from django.contrib.auth.models import User
 from django.core import urlresolvers
 
@@ -109,9 +113,21 @@ class InventoryTestCase(TestCase):
         flowcells = [ str(x.uri) for x in targets]
         return flowcells
 
+OLD_DB = settings.DATABASES['default']['NAME']
+def setUpModule():
+    setup_test_environment()
+    connection.creation.create_test_db()
+
+def tearDownModule():
+    connection.creation.destroy_test_db(OLD_DB)
+    teardown_test_environment()
+
 def suite():
-    return unittest.makeSuite(InventoryTestCase, 'test')
+    from unittest2 import TestSuite, defaultTestLoader
+    suite = TestSuite()
+    suite.addTests(defaultTestLoader.loadTestsFromTestCase(InventoryTestCase))
+    return suite
 
 if __name__ == "__main__":
-    unittest.main(defaultTest="suite")
-
+    from unittest2 import main
+    main(defaultTest="suite")