]> git.decadent.org.uk Git - dak.git/blobdiff - tests/db_test.py
Implement and test class ContentsWriter.
[dak.git] / tests / db_test.py
index b73ae7d310cccfdcadc869903d98276945aa7838..4f5e63822ac4eab534ffb0b428af705a5f0ddfcf 100644 (file)
@@ -101,8 +101,8 @@ class DBDakTestCase(DakTestCase):
         if 'comp' in self.__dict__:
             return
         self.comp = {}
-        self.comp['main'] = Component(component_name = 'main')
-        self.comp['contrib'] = Component(component_name = 'contrib')
+        for name in ('main', 'contrib', 'non-free'):
+            self.comp[name] = Component(component_name = name)
         self.session.add_all(self.comp.values())
 
     def setup_locations(self):
@@ -242,7 +242,8 @@ class DBDakTestCase(DakTestCase):
         if 'otype' in self.__dict__:
             return
         self.otype = {}
-        self.otype['deb'] = OverrideType(overridetype = 'deb')
+        for type_ in ('deb', 'udeb'):
+            self.otype[type_] = OverrideType(overridetype = type_)
         self.session.add_all(self.otype.values())
         self.session.flush()
 
@@ -268,6 +269,33 @@ class DBDakTestCase(DakTestCase):
         self.session.add_all(self.prio.values())
         self.session.flush()
 
+    def setup_overrides(self):
+        '''
+        Setup self.override of class Override.
+        '''
+        if 'override' in self.__dict__:
+            return
+        self.setup_suites()
+        self.setup_components()
+        self.setup_overridetypes()
+        self.setup_sections()
+        self.setup_priorities()
+        self.override = {}
+        self.override['hello_sid_main_udeb'] = Override(package = 'hello', \
+            suite = self.suite['sid'], component = self.comp['main'], \
+            overridetype = self.otype['udeb'], \
+            section = self.section['python'], priority = self.prio['standard'])
+        self.override['hello_squeeze_main_deb'] = Override(package = 'hello', \
+            suite = self.suite['squeeze'], component = self.comp['main'], \
+            overridetype = self.otype['deb'], \
+            section = self.section['python'], priority = self.prio['standard'])
+        self.override['hello_lenny_contrib_deb'] = Override(package = 'hello', \
+            suite = self.suite['lenny'], component = self.comp['contrib'], \
+            overridetype = self.otype['deb'], \
+            section = self.section['python'], priority = self.prio['standard'])
+        self.session.add_all(self.override.values())
+        self.session.flush()
+
     def setUp(self):
         if self.metadata is None:
             self.initialize()
@@ -294,7 +322,8 @@ class DBDakTestCase(DakTestCase):
     def tearDown(self):
         self.session.rollback()
         for class_ in self.classes_to_clean():
-            self.session.query(class_).delete()
+            for object_ in self.session.query(class_):
+                self.session.delete(object_)
         self.session.commit()
         # usually there is no need to drop all tables here
         #self.metadata.drop_all()