diff options
author | Tarek Ziadé <ziade.tarek@gmail.com> | 2010-05-17 10:06:20 (GMT) |
---|---|---|
committer | Tarek Ziadé <ziade.tarek@gmail.com> | 2010-05-17 10:06:20 (GMT) |
commit | 422545f0e7c83703d3a35ab85a210e19aa40332d (patch) | |
tree | fa0234fc559f2470c680dc60c550e0d139d9797f /Lib/distutils/tests | |
parent | 1b553473ed32cec2f0d7aadbe1b1fd70fbb8fb98 (diff) | |
download | cpython-422545f0e7c83703d3a35ab85a210e19aa40332d.zip cpython-422545f0e7c83703d3a35ab85a210e19aa40332d.tar.gz cpython-422545f0e7c83703d3a35ab85a210e19aa40332d.tar.bz2 |
Fixed #8688: Distutils now recalculates MANIFEST everytime.
Diffstat (limited to 'Lib/distutils/tests')
-rw-r--r-- | Lib/distutils/tests/test_sdist.py | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/Lib/distutils/tests/test_sdist.py b/Lib/distutils/tests/test_sdist.py index 20b20aa..76f5b77 100644 --- a/Lib/distutils/tests/test_sdist.py +++ b/Lib/distutils/tests/test_sdist.py @@ -346,6 +346,47 @@ class SDistTestCase(PyPIRCCommandTestCase): finally: archive.close() + def test_get_file_list(self): + # make sure MANIFEST is recalculated + dist, cmd = self.get_cmd() + + # filling data_files by pointing files in package_data + dist.package_data = {'somecode': ['*.txt']} + self.write_file((self.tmp_dir, 'somecode', 'doc.txt'), '#') + cmd.ensure_finalized() + cmd.run() + + f = open(cmd.manifest) + try: + manifest = [line.strip() for line in f.read().split('\n') + if line.strip() != ''] + finally: + f.close() + + self.assertEquals(len(manifest), 4) + + # adding a file + self.write_file((self.tmp_dir, 'somecode', 'doc2.txt'), '#') + + # make sure build_py is reinitinialized, like a fresh run + build_py = dist.get_command_obj('build_py') + build_py.finalized = False + build_py.ensure_finalized() + + cmd.run() + + f = open(cmd.manifest) + try: + manifest2 = [line.strip() for line in f.read().split('\n') + if line.strip() != ''] + finally: + f.close() + + # do we have the new file in MANIFEST ? + self.assertEquals(len(manifest2), 5) + self.assertIn('doc2.txt', manifest2[-1]) + + def test_suite(): return unittest.makeSuite(SDistTestCase) |