diff options
| author | Tarek Ziadé <ziade.tarek@gmail.com> | 2009-05-06 07:17:52 +0000 |
|---|---|---|
| committer | Tarek Ziadé <ziade.tarek@gmail.com> | 2009-05-06 07:17:52 +0000 |
| commit | d2bb1a5377fe04c9c27f77a8312c733bc713cc06 (patch) | |
| tree | 4b40699d373c120c8087ac86c9f27820c14c995a /Lib/distutils/tests | |
| parent | 041f465cbd0d180426cbd5ab544266b7c06fd120 (diff) | |
| download | cpython-git-d2bb1a5377fe04c9c27f77a8312c733bc713cc06.tar.gz | |
Added a test and cleaned check_library_list to be ready to fix #5940
Diffstat (limited to 'Lib/distutils/tests')
| -rw-r--r-- | Lib/distutils/tests/test_build_clib.py | 47 |
1 files changed, 47 insertions, 0 deletions
diff --git a/Lib/distutils/tests/test_build_clib.py b/Lib/distutils/tests/test_build_clib.py new file mode 100644 index 0000000000..36c07b7953 --- /dev/null +++ b/Lib/distutils/tests/test_build_clib.py @@ -0,0 +1,47 @@ +"""Tests for distutils.command.build_clib.""" +import unittest + +from distutils.command.build_clib import build_clib +from distutils.errors import DistutilsSetupError +from distutils.tests import support + +class BuildCLibTestCase(support.TempdirManager, + support.LoggingSilencer, + unittest.TestCase): + + def test_check_library_dist(self): + pkg_dir, dist = self.create_dist() + cmd = build_clib(dist) + + # 'libraries' option must be a list + self.assertRaises(DistutilsSetupError, cmd.check_library_list, 'foo') + + # each element of 'libraries' must a 2-tuple + self.assertRaises(DistutilsSetupError, cmd.check_library_list, + ['foo1', 'foo2']) + + # first element of each tuple in 'libraries' + # must be a string (the library name) + self.assertRaises(DistutilsSetupError, cmd.check_library_list, + [(1, 'foo1'), ('name', 'foo2')]) + + # library name may not contain directory separators + self.assertRaises(DistutilsSetupError, cmd.check_library_list, + [('name', 'foo1'), + ('another/name', 'foo2')]) + + # second element of each tuple must be a dictionary (build info) + self.assertRaises(DistutilsSetupError, cmd.check_library_list, + [('name', {}), + ('another', 'foo2')]) + + # those work + libs = [('name', {}), ('name', {'ok': 'good'})] + cmd.check_library_list(libs) + + +def test_suite(): + return unittest.makeSuite(BuildCLibTestCase) + +if __name__ == "__main__": + unittest.main(defaultTest="test_suite") |
