]> git.decadent.org.uk Git - dak.git/blobdiff - tests/db_test.py
Merge branch 'dbtests' of ftp-master.debian.org:public_html/dak into dbtests
[dak.git] / tests / db_test.py
index e9a533650df2e910ec4584b6990fca6d9158119e..20955518bacf5d63a019da5324e269576d820e43 100644 (file)
@@ -3,7 +3,7 @@ from base_test import DakTestCase, fixture
 from daklib.config import Config
 from daklib.dbconn import DBConn
 
-from sqlalchemy import create_engine
+from sqlalchemy import create_engine, __version__
 from sqlalchemy.exc import SADeprecationWarning
 
 import pickle
@@ -17,6 +17,9 @@ warnings.filterwarnings('ignore', \
 class DBDakTestCase(DakTestCase):
     def setUp(self):
         cnf = Config()
+        if cnf["DB::Name"] in ('backports', 'obscurity', 'projectb'):
+            self.fail("You have configured an invalid database name: '%s'." % \
+                    cnf["DB::Name"])
         if cnf["DB::Host"]:
             # TCP/IP
             connstr = "postgres://%s" % cnf["DB::Host"]
@@ -29,7 +32,8 @@ class DBDakTestCase(DakTestCase):
             if cnf["DB::Port"] and cnf["DB::Port"] != "-1":
                 connstr += "?port=%s" % cnf["DB::Port"]
 
-        pickle_file = open(fixture('db-metadata.pkl'), 'r')
+        pickle_filename = 'db-metadata-%s.pkl' % __version__
+        pickle_file = open(fixture(pickle_filename), 'r')
         self.metadata = pickle.load(pickle_file)
         self.metadata.ddl_listeners = pickle.load(pickle_file)
         pickle_file.close()
@@ -38,7 +42,6 @@ class DBDakTestCase(DakTestCase):
         self.session = DBConn().session()
 
     def tearDown(self):
-        #pass
         self.session.close()
-        #self.metadata.drop_all()
+        self.metadata.drop_all()