]> git.decadent.org.uk Git - dak.git/blob - tests/dbtest_fingerprint.py
Add a doc string to FingerprintTestCase.
[dak.git] / tests / dbtest_fingerprint.py
1 #!/usr/bin/env python
2
3 from db_test import DBDakTestCase
4
5 from daklib.dbconn import Fingerprint, Uid
6
7 import unittest
8
9 class FingerprintTestCase(DBDakTestCase):
10     """
11     The FingerprintTestCase tests the relation between Fingerprint and Uid
12     objects.
13     1. It creates a fresh Fingerprint object.
14     2. It assigns a fresh Uid object to the Fingerprint object.
15     3. It fetches the Uid object from the database.
16     4. It checks that the original fingerprint is assigned to the freshly
17        fetched Uid object.
18     """
19
20     def test_mini(self):
21         fingerprint = Fingerprint(fingerprint = 'deadbeefdeadbeef')
22         self.session.add(fingerprint)
23         query = self.session.query(Fingerprint)
24         self.assertEqual(1, query.count())
25         self.assertEqual('deadbeefdeadbeef', query.one().fingerprint)
26         fingerprint.uid = Uid(uid = 'ftp-master@debian.org', name = 'ftpteam')
27         uid = self.session.query(Uid).one()
28         self.assertEqual('ftp-master@debian.org', uid.uid)
29         self.assertEqual('ftpteam', uid.name)
30         self.assertEqual(1, len(uid.fingerprint))
31         self.assertEqual('deadbeefdeadbeef', uid.fingerprint[0].fingerprint)
32
33 if __name__ == '__main__':
34     unittest.main()