X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=tests%2Fdbtest_metadata.py;fp=tests%2Fdbtest_metadata.py;h=f1f30098fb9206c8dcd81fee675ceaf334966232;hb=b2429767aa02b1e02def623875fdd6a942c4a44f;hp=0000000000000000000000000000000000000000;hpb=e2ab59085f36e9fec253cb2b473595409ba99bd2;p=dak.git diff --git a/tests/dbtest_metadata.py b/tests/dbtest_metadata.py new file mode 100755 index 00000000..f1f30098 --- /dev/null +++ b/tests/dbtest_metadata.py @@ -0,0 +1,43 @@ +#!/usr/bin/env python + +from db_test import DBDakTestCase + +from daklib.dbconn import DBConn, MetadataKey, BinaryMetadata, SourceMetadata + +import unittest + +class MetadataTestCase(DBDakTestCase): + """ + This TestCase checks the metadata handling. + """ + + def test_mappers(self): + ''' + Tests the mapper configuration. + ''' + self.setup_binaries() + # MetadataKey + depends = MetadataKey(key = 'Depends') + self.session.add(depends) + self.session.flush() + self.assertTrue(depends.key_id is not None) + # BinaryMetadata + hello_dep = BinaryMetadata(binary = self.binary['hello_2.2-1_i386'], + key = depends, value = 'foobar (>= 1.0)') + self.session.add(hello_dep) + self.session.flush() + self.assertEqual('hello', hello_dep.binary.package) + self.assertEqual('Depends', hello_dep.key.key) + self.assertEqual('foobar (>= 1.0)', hello_dep.value) + # SourceMetadata + build_dep = MetadataKey(key = 'Build-Depends') + hello_bd = SourceMetadata(source = self.binary['hello_2.2-1_i386'].source, + key = build_dep, value = 'foobar-dev') + self.session.add(hello_bd) + self.session.flush() + self.assertEqual('hello', hello_bd.source.source) + self.assertEqual('Build-Depends', hello_bd.key.key) + self.assertEqual('foobar-dev', hello_bd.value) + +if __name__ == '__main__': + unittest.main()