]> git.decadent.org.uk Git - dak.git/commitdiff
Merge branch 'dbtests' of ftp-master.debian.org:public_html/dak into dbtests
authorTorsten Werner <twerner@debian.org>
Thu, 13 Jan 2011 21:50:14 +0000 (21:50 +0000)
committerTorsten Werner <twerner@debian.org>
Thu, 13 Jan 2011 21:50:14 +0000 (21:50 +0000)
tests/dbtest_debversion.py [new file with mode: 0755]
tests/dbtest_fingerprint.py

diff --git a/tests/dbtest_debversion.py b/tests/dbtest_debversion.py
new file mode 100755 (executable)
index 0000000..3d10b92
--- /dev/null
@@ -0,0 +1,48 @@
+#!/usr/bin/env python
+
+from db_test import DBDakTestCase
+
+from daklib.dbconn import DBConn, DebVersion
+
+from sqlalchemy import Table, Column, Integer, func
+from sqlalchemy.orm import mapper
+import unittest
+
+class Version(object):
+    def __init__(self, version):
+        self.version = version
+
+    def __repr__(self):
+        return "<Version('%s')>" % self.version
+
+class DebVersionTestCase(DBDakTestCase):
+    def setUp(self):
+        super(DebVersionTestCase, self).setUp()
+        self.version_table = Table('version', self.metadata, \
+            Column('id', Integer, primary_key = True), \
+            Column('version', DebVersion), \
+            )
+        self.version_table.create(checkfirst = True)
+        mapper(Version, self.version_table)
+
+    def test_debversion(self):
+        v1 = Version('0.5')
+        self.session.add(v1)
+        v2 = Version('1.0')
+        self.session.add(v2)
+        #self.session.commit()
+        q = self.session.query(Version)
+        self.assertEqual(2, q.count())
+        self.assertEqual(2, q.filter(Version.version > '0.5~').count())
+        self.assertEqual(1, q.filter(Version.version > '0.5').count())
+        self.assertEqual(0, q.filter(Version.version > '1.0').count())
+        for v in self.session.query(Version.version):
+            print v
+
+    def tearDown(self):
+        self.session.close()
+        self.version_table.drop()
+        super(DebVersionTestCase, self).tearDown()
+
+if __name__ == '__main__':
+    unittest.main()
index c0d23525479cf698968174a56b69c7f142767871..efd994d3267dec5f1b8f9b9ad9290ccc016d8742 100755 (executable)
@@ -16,5 +16,9 @@ class FingerprintTestCase(DBDakTestCase):
         self.assertEqual(1, query.count())
         self.assertEqual('deadbeefdeadbeef', query.one().fingerprint)
 
+    def tearDown(self):
+        self.session.query(Fingerprint).delete()
+        super(FingerprintTestCase, self).tearDown()
+
 if __name__ == '__main__':
     unittest.main()