diff options
| author | Benjamin Peterson <benjamin@python.org> | 2011-09-06 11:57:38 (GMT) |
|---|---|---|
| committer | Benjamin Peterson <benjamin@python.org> | 2011-09-06 11:57:38 (GMT) |
| commit | 388c0e2325f606d497ec174a4a6b28c4d352db2c (patch) | |
| tree | 83ab157488dd364de2a26b453c34e6ce7cc29537 /Lib/distutils/tests/test_sdist.py | |
| parent | 6d8f744730c0689d822db1a2425170d7d5d44aca (diff) | |
| parent | 900c292c6b886ad9c693d7e0481dc16398d5071d (diff) | |
| download | cpython-388c0e2325f606d497ec174a4a6b28c4d352db2c.zip cpython-388c0e2325f606d497ec174a4a6b28c4d352db2c.tar.gz cpython-388c0e2325f606d497ec174a4a6b28c4d352db2c.tar.bz2 | |
merge heads
Diffstat (limited to 'Lib/distutils/tests/test_sdist.py')
| -rw-r--r-- | Lib/distutils/tests/test_sdist.py | 37 |
1 files changed, 31 insertions, 6 deletions
diff --git a/Lib/distutils/tests/test_sdist.py b/Lib/distutils/tests/test_sdist.py index f34f786..529b4ef 100644 --- a/Lib/distutils/tests/test_sdist.py +++ b/Lib/distutils/tests/test_sdist.py @@ -15,6 +15,7 @@ from distutils.tests.test_config import PyPIRCCommandTestCase from distutils.errors import DistutilsOptionError from distutils.spawn import find_executable from distutils.log import WARN +from distutils.filelist import FileList from distutils.archive_util import ARCHIVE_FORMATS SETUP_PY = """ @@ -78,9 +79,6 @@ class SDistTestCase(PyPIRCCommandTestCase): dist.include_package_data = True cmd = sdist(dist) cmd.dist_dir = 'dist' - def _warn(*args): - pass - cmd.warn = _warn return dist, cmd @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run') @@ -235,7 +233,8 @@ class SDistTestCase(PyPIRCCommandTestCase): # with the `check` subcommand cmd.ensure_finalized() cmd.run() - warnings = self.get_logs(WARN) + warnings = [msg for msg in self.get_logs(WARN) if + msg.startswith('warning: check:')] self.assertEqual(len(warnings), 2) # trying with a complete set of metadata @@ -244,7 +243,8 @@ class SDistTestCase(PyPIRCCommandTestCase): cmd.ensure_finalized() cmd.metadata_check = 0 cmd.run() - warnings = self.get_logs(WARN) + warnings = [msg for msg in self.get_logs(WARN) if + msg.startswith('warning: check:')] self.assertEqual(len(warnings), 0) def test_check_metadata_deprecated(self): @@ -266,7 +266,6 @@ class SDistTestCase(PyPIRCCommandTestCase): self.assertEqual(len(output), num_formats) def test_finalize_options(self): - dist, cmd = self.get_cmd() cmd.finalize_options() @@ -286,6 +285,32 @@ class SDistTestCase(PyPIRCCommandTestCase): cmd.formats = 'supazipa' self.assertRaises(DistutilsOptionError, cmd.finalize_options) + # the following tests make sure there is a nice error message instead + # of a traceback when parsing an invalid manifest template + + def _test_template(self, content): + dist, cmd = self.get_cmd() + os.chdir(self.tmp_dir) + self.write_file('MANIFEST.in', content) + cmd.ensure_finalized() + cmd.filelist = FileList() + cmd.read_template() + warnings = self.get_logs(WARN) + self.assertEqual(len(warnings), 1) + + def test_invalid_template_unknown_command(self): + self._test_template('taunt knights *') + + def test_invalid_template_wrong_arguments(self): + # this manifest command takes one argument + self._test_template('prune') + + @unittest.skipIf(os.name != 'nt', 'test relevant for Windows only') + def test_invalid_template_wrong_path(self): + # on Windows, trailing slashes are not allowed + # this used to crash instead of raising a warning: #8286 + self._test_template('include examples/') + @unittest.skipUnless(ZLIB_SUPPORT, 'Need zlib support to run') def test_get_file_list(self): # make sure MANIFEST is recalculated |
