Improve one packaging test, remove a setuptoolism in another

This commit is contained in:
Éric Araujo 2012-02-04 21:43:07 +01:00
parent ff962c5f1f
commit 591f6e82bd
2 changed files with 14 additions and 5 deletions

View File

@ -24,11 +24,17 @@ class BuildPyTestCase(support.TempdirManager,
f.write("# Pretend this is a package.")
finally:
f.close()
# let's have two files to make sure globbing works
f = open(os.path.join(pkg_dir, "README.txt"), "w")
try:
f.write("Info about this package")
finally:
f.close()
f = open(os.path.join(pkg_dir, "HACKING.txt"), "w")
try:
f.write("How to contribute")
finally:
f.close()
destination = self.mkdtemp()
@ -42,7 +48,7 @@ class BuildPyTestCase(support.TempdirManager,
convert_2to3_doctests=None,
use_2to3=False)
dist.packages = ["pkg"]
dist.package_data = {"pkg": ["README.txt"]}
dist.package_data = {"pkg": ["*.txt"]}
dist.package_dir = sources
cmd = build_py(dist)
@ -55,15 +61,19 @@ class BuildPyTestCase(support.TempdirManager,
# This makes sure the list of outputs includes byte-compiled
# files for Python modules but not for package data files
# (there shouldn't *be* byte-code files for those!).
#
self.assertEqual(len(cmd.get_outputs()), 3)
# FIXME the test below is not doing what the comment above says, and
# if it did it would show a code bug: if we add a demo.py file to
# package_data, it gets byte-compiled!
outputs = cmd.get_outputs()
self.assertEqual(len(outputs), 4, outputs)
pkgdest = os.path.join(destination, "pkg")
files = os.listdir(pkgdest)
pycache_dir = os.path.join(pkgdest, "__pycache__")
self.assertIn("__init__.py", files)
self.assertIn("README.txt", files)
self.assertIn("HACKING.txt", files)
pyc_files = os.listdir(pycache_dir)
self.assertIn("__init__.%s.pyc" % imp.get_tag(), pyc_files)
self.assertEqual(["__init__.%s.pyc" % imp.get_tag()], pyc_files)
def test_empty_package_dir(self):
# See SF 1668596/1720897.

View File

@ -73,7 +73,6 @@ class SDistTestCase(support.TempdirManager,
'author_email': 'xxx'}
dist = Distribution(metadata)
dist.packages = ['somecode']
dist.include_package_data = True
cmd = sdist(dist)
cmd.dist_dir = 'dist'
return dist, cmd