--- /dev/null
+#!/usr/bin/env python
+
+from base_test import DakTestCase
+
+from dak.copy_installer import InstallerCopier
+
+import unittest
+
+class ImportTestCase(DakTestCase):
+ def test_arguments(self):
+ '''test constructor arguments'''
+ # version argument is required
+ self.assertRaises(KeyError, InstallerCopier)
+
+ copier = InstallerCopier(version = '20110106')
+ self.assertEqual('20110106', copier.version)
+ self.assertEqual('unstable', copier.source)
+ self.assertEqual('testing', copier.dest)
+
+ copier = InstallerCopier(version = '20110106', source = \
+ 'proposed-updates')
+ self.assertEqual('proposed-updates', copier.source)
+
+ copier = InstallerCopier(version = '20110106', dest = 'stable')
+ self.assertEqual('stable', copier.dest)
+
+ def test_dir_names(self):
+ copier = InstallerCopier(version = '20110106')
+ self.assertEqual('fixtures/ftp/dists/unstable/main',
+ copier.source_dir)
+ self.assertEqual('fixtures/ftp/dists/testing/main',
+ copier.dest_dir)
+
+ def missing_source(self):
+ copier = InstallerCopier(version = '20110106', source = 'foo')
+
+ def missing_dest(self):
+ copier = InstallerCopier(version = '20110106', dest = 'bar')
+
+ def test_suites(self):
+ self.assertRaises(IOError, self.missing_source)
+ self.assertRaises(IOError, self.missing_dest)
+
+ def test_copy(self):
+ copier = InstallerCopier(version = '20110106')
+ self.assertEqual(['amd64'], copier.architectures)
+ self.assertEqual(['i386'], copier.skip_architectures)
+ self.assertEqual( \
+ [('fixtures/ftp/dists/unstable/main/installer-amd64/20110106', \
+ 'fixtures/ftp/dists/testing/main/installer-amd64/20110106'),], \
+ copier.trees_to_copy)
+ self.assertEqual([('20110106', \
+ 'fixtures/ftp/dists/testing/main/installer-amd64/current')], \
+ copier.symlinks_to_create)
+ self.assertEqual('''
+Will copy installer version 20110106 from suite unstable to
+testing.
+Architectures to copy: amd64
+Architectures to skip: i386''', copier.get_message())
+
+if __name__ == '__main__':
+ unittest.main()