diff options
author | Tarek Ziadé <ziade.tarek@gmail.com> | 2009-05-17 10:50:24 (GMT) |
---|---|---|
committer | Tarek Ziadé <ziade.tarek@gmail.com> | 2009-05-17 10:50:24 (GMT) |
commit | d2dd51dae9925f23f8d3353b8e5131955b01fcd3 (patch) | |
tree | afb8ce738908048928ce5993d1414b0e75943067 /Lib/distutils/tests | |
parent | 38e2d8e263c0fb580b223a765eee8c3ed196324f (diff) | |
download | cpython-d2dd51dae9925f23f8d3353b8e5131955b01fcd3.zip cpython-d2dd51dae9925f23f8d3353b8e5131955b01fcd3.tar.gz cpython-d2dd51dae9925f23f8d3353b8e5131955b01fcd3.tar.bz2 |
Merged revisions 72721 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r72721 | tarek.ziade | 2009-05-17 12:44:12 +0200 (Sun, 17 May 2009) | 1 line
removed sys.platform == 'mac' support in distutils.dist.parse_command_line and improved test coverage
........
Diffstat (limited to 'Lib/distutils/tests')
-rw-r--r-- | Lib/distutils/tests/test_dist.py | 57 |
1 files changed, 38 insertions, 19 deletions
diff --git a/Lib/distutils/tests/test_dist.py b/Lib/distutils/tests/test_dist.py index 092bd14..54b63f7 100644 --- a/Lib/distutils/tests/test_dist.py +++ b/Lib/distutils/tests/test_dist.py @@ -1,18 +1,18 @@ """Tests for distutils.dist.""" - -import distutils.cmd -import distutils.dist import os import io import sys import unittest import warnings -from test.support import TESTFN +from distutils.dist import Distribution, fix_help_options +from distutils.cmd import Command + +from test.support import TESTFN, captured_stdout from distutils.tests import support -class test_dist(distutils.cmd.Command): +class test_dist(Command): """Sample distutils extension command.""" user_options = [ @@ -23,7 +23,7 @@ class test_dist(distutils.cmd.Command): self.sample_option = None -class TestDistribution(distutils.dist.Distribution): +class TestDistribution(Distribution): """Distribution subclasses that avoids the default search for configuration files. @@ -99,11 +99,10 @@ class DistributionTestCase(unittest.TestCase): finally: os.unlink(TESTFN) - def test_empty_options(self): # an empty options dictionary should not stay in the # list of attributes - klass = distutils.dist.Distribution + klass = Distribution # catching warnings warns = [] @@ -129,7 +128,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, def test_simple_metadata(self): attrs = {"name": "package", "version": "1.0"} - dist = distutils.dist.Distribution(attrs) + dist = Distribution(attrs) meta = self.format_metadata(dist) self.assert_("Metadata-Version: 1.0" in meta) self.assert_("provides:" not in meta.lower()) @@ -140,7 +139,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, attrs = {"name": "package", "version": "1.0", "provides": ["package", "package.sub"]} - dist = distutils.dist.Distribution(attrs) + dist = Distribution(attrs) self.assertEqual(dist.metadata.get_provides(), ["package", "package.sub"]) self.assertEqual(dist.get_provides(), @@ -151,8 +150,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, self.assert_("obsoletes:" not in meta.lower()) def test_provides_illegal(self): - self.assertRaises(ValueError, - distutils.dist.Distribution, + self.assertRaises(ValueError, Distribution, {"name": "package", "version": "1.0", "provides": ["my.pkg (splat)"]}) @@ -161,7 +159,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, attrs = {"name": "package", "version": "1.0", "requires": ["other", "another (==1.0)"]} - dist = distutils.dist.Distribution(attrs) + dist = Distribution(attrs) self.assertEqual(dist.metadata.get_requires(), ["other", "another (==1.0)"]) self.assertEqual(dist.get_requires(), @@ -174,8 +172,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, self.assert_("obsoletes:" not in meta.lower()) def test_requires_illegal(self): - self.assertRaises(ValueError, - distutils.dist.Distribution, + self.assertRaises(ValueError, Distribution, {"name": "package", "version": "1.0", "requires": ["my.pkg (splat)"]}) @@ -184,7 +181,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, attrs = {"name": "package", "version": "1.0", "obsoletes": ["other", "another (<1.0)"]} - dist = distutils.dist.Distribution(attrs) + dist = Distribution(attrs) self.assertEqual(dist.metadata.get_obsoletes(), ["other", "another (<1.0)"]) self.assertEqual(dist.get_obsoletes(), @@ -197,8 +194,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, self.assert_("Obsoletes: another (<1.0)" in meta) def test_obsoletes_illegal(self): - self.assertRaises(ValueError, - distutils.dist.Distribution, + self.assertRaises(ValueError, Distribution, {"name": "package", "version": "1.0", "obsoletes": ["my.pkg (splat)"]}) @@ -223,7 +219,7 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, f.close() try: - dist = distutils.dist.Distribution() + dist = Distribution() # linux-style if sys.platform in ('linux', 'darwin'): @@ -241,6 +237,29 @@ class MetadataTestCase(support.TempdirManager, support.EnvironGuard, finally: os.remove(user_filename) + def test_fix_help_options(self): + help_tuples = [('a', 'b', 'c', 'd'), (1, 2, 3, 4)] + fancy_options = fix_help_options(help_tuples) + self.assertEquals(fancy_options[0], ('a', 'b', 'c')) + self.assertEquals(fancy_options[1], (1, 2, 3)) + + def test_show_help(self): + # smoke test, just makes sure some help is displayed + dist = Distribution() + old_argv = sys.argv + sys.argv = [] + try: + dist.help = 1 + dist.script_name = 'setup.py' + with captured_stdout() as s: + dist.parse_command_line() + finally: + sys.argv = old_argv + + output = [line for line in s.getvalue().split('\n') + if line.strip() != ''] + self.assert_(len(output) > 0) + def test_suite(): suite = unittest.TestSuite() suite.addTest(unittest.makeSuite(DistributionTestCase)) |