Testsuite: Turn SQLAlchemy warnings into errors
[mediagoblin.git] / mediagoblin / tests / __init__.py
index adb6a1b3ab041d85751703c0c896211cb14ec2dd..5a3235c651bee2ed149db6946e6d251f3b62588e 100644 (file)
@@ -1,5 +1,5 @@
 # GNU MediaGoblin -- federated, autonomous media hosting
-# Copyright (C) 2011 Free Software Foundation, Inc
+# Copyright (C) 2011, 2012 MediaGoblin contributors.  See AUTHORS.
 #
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU Affero General Public License as published by
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
-from mediagoblin import mg_globals
+import os
+import shutil
 
+from mediagoblin import mg_globals
 from mediagoblin.tests.tools import (
-    MEDIAGOBLIN_TEST_DB_NAME, suicide_if_bad_celery_environ)
+    TEST_USER_DEV, suicide_if_bad_celery_environ)
 
 
 def setup_package():
     suicide_if_bad_celery_environ()
 
+    import warnings
+    from sqlalchemy.exc import SAWarning
+    warnings.simplefilter("error", SAWarning)
+
 
 def teardown_package():
-    if ((mg_globals.db_connection
-         and mg_globals.database.name == MEDIAGOBLIN_TEST_DB_NAME)):
-            print "Killing db ..."
-            mg_globals.db_connection.drop_database(MEDIAGOBLIN_TEST_DB_NAME)
-            print "... done"
+    # Remove and reinstall user_dev directories
+    if os.path.exists(TEST_USER_DEV):
+        shutil.rmtree(TEST_USER_DEV)