summaryrefslogtreecommitdiffstats
path: root/Lib/packaging
diff options
context:
space:
mode:
authorÉric Araujo <merwok@netwok.org>2011-10-19 06:49:20 (GMT)
committerÉric Araujo <merwok@netwok.org>2011-10-19 06:49:20 (GMT)
commitf3f283a1cbd8b87c911edc0e93baf3d0bfec672e (patch)
tree83cd6088fa077e31c04c42148318539538d8ff65 /Lib/packaging
parent79d9c42b04813dc81d91127ec0ffb6d4735e2c0e (diff)
downloadcpython-f3f283a1cbd8b87c911edc0e93baf3d0bfec672e.zip
cpython-f3f283a1cbd8b87c911edc0e93baf3d0bfec672e.tar.gz
cpython-f3f283a1cbd8b87c911edc0e93baf3d0bfec672e.tar.bz2
Clean up some idioms in packaging tests.
- Use os.makedirs (I had forgotten about it!) - Let TempdirManager.write_file call os.path.join for us - Remove custom command added by test_dist - Use a skip instead of hiding a method with an underscore - Address pyflakes warnings
Diffstat (limited to 'Lib/packaging')
-rw-r--r--Lib/packaging/tests/__main__.py1
-rw-r--r--Lib/packaging/tests/test_command_clean.py2
-rw-r--r--Lib/packaging/tests/test_command_install_data.py5
-rw-r--r--Lib/packaging/tests/test_command_install_dist.py9
-rw-r--r--Lib/packaging/tests/test_command_test.py3
-rw-r--r--Lib/packaging/tests/test_command_upload.py2
-rw-r--r--Lib/packaging/tests/test_command_upload_docs.py5
-rw-r--r--Lib/packaging/tests/test_create.py3
-rw-r--r--Lib/packaging/tests/test_dist.py11
-rw-r--r--Lib/packaging/tests/test_mixin2to3.py1
-rw-r--r--Lib/packaging/tests/test_uninstall.py3
-rw-r--r--Lib/packaging/tests/test_util.py28
-rw-r--r--Lib/packaging/tests/test_version.py4
13 files changed, 40 insertions, 37 deletions
diff --git a/Lib/packaging/tests/__main__.py b/Lib/packaging/tests/__main__.py
index 51daba4..00f323e 100644
--- a/Lib/packaging/tests/__main__.py
+++ b/Lib/packaging/tests/__main__.py
@@ -3,7 +3,6 @@
# Ripped from importlib tests, thanks Brett!
import os
-import sys
import unittest
from test.support import run_unittest, reap_children, reap_threads
diff --git a/Lib/packaging/tests/test_command_clean.py b/Lib/packaging/tests/test_command_clean.py
index 8d29e4d..ab944ed 100644
--- a/Lib/packaging/tests/test_command_clean.py
+++ b/Lib/packaging/tests/test_command_clean.py
@@ -23,7 +23,7 @@ class cleanTestCase(support.TempdirManager, support.LoggingCatcher,
if name == 'build_base':
continue
for f in ('one', 'two', 'three'):
- self.write_file(os.path.join(path, f))
+ self.write_file((path, f))
# let's run the command
cmd.all = True
diff --git a/Lib/packaging/tests/test_command_install_data.py b/Lib/packaging/tests/test_command_install_data.py
index 44a14d2..7f4af41 100644
--- a/Lib/packaging/tests/test_command_install_data.py
+++ b/Lib/packaging/tests/test_command_install_data.py
@@ -117,6 +117,11 @@ class InstallDataTestCase(support.TempdirManager,
dist.command_obj['install_distinfo'] = cmd
cmd.run()
+ # first a few sanity checks
+ self.assertEqual(os.listdir(scripts_dir), ['spamd'])
+ self.assertEqual(os.listdir(install_dir), ['Spamlib-0.1.dist-info'])
+
+ # now the real test
fn = os.path.join(install_dir, 'Spamlib-0.1.dist-info', 'RESOURCES')
with open(fn, encoding='utf-8') as fp:
content = fp.read().strip()
diff --git a/Lib/packaging/tests/test_command_install_dist.py b/Lib/packaging/tests/test_command_install_dist.py
index 496a3d8..3345d2e 100644
--- a/Lib/packaging/tests/test_command_install_dist.py
+++ b/Lib/packaging/tests/test_command_install_dist.py
@@ -93,21 +93,20 @@ class InstallTestCase(support.TempdirManager,
self.old_expand = os.path.expanduser
os.path.expanduser = _expanduser
- try:
- # this is the actual test
- self._test_user_site()
- finally:
+ def cleanup():
_CONFIG_VARS['userbase'] = self.old_user_base
_SCHEMES.set(scheme, 'purelib', self.old_user_site)
os.path.expanduser = self.old_expand
- def _test_user_site(self):
+ self.addCleanup(cleanup)
+
schemes = get_scheme_names()
for key in ('nt_user', 'posix_user', 'os2_home'):
self.assertIn(key, schemes)
dist = Distribution({'name': 'xx'})
cmd = install_dist(dist)
+
# making sure the user option is there
options = [name for name, short, lable in
cmd.user_options]
diff --git a/Lib/packaging/tests/test_command_test.py b/Lib/packaging/tests/test_command_test.py
index 31566eb..7aa1f79 100644
--- a/Lib/packaging/tests/test_command_test.py
+++ b/Lib/packaging/tests/test_command_test.py
@@ -139,7 +139,8 @@ class TestTest(TempdirManager,
cmd.run()
self.assertEqual(['build has run'], record)
- def _test_works_with_2to3(self):
+ @unittest.skip('needs to be written')
+ def test_works_with_2to3(self):
pass
def test_checks_requires(self):
diff --git a/Lib/packaging/tests/test_command_upload.py b/Lib/packaging/tests/test_command_upload.py
index 82d7360..1f68c1d 100644
--- a/Lib/packaging/tests/test_command_upload.py
+++ b/Lib/packaging/tests/test_command_upload.py
@@ -129,7 +129,7 @@ class UploadTestCase(support.TempdirManager, support.EnvironRestorer,
dist_files = [(command, pyversion, filename)]
docs_path = os.path.join(self.tmp_dir, "build", "docs")
os.makedirs(docs_path)
- self.write_file(os.path.join(docs_path, "index.html"), "yellow")
+ self.write_file((docs_path, "index.html"), "yellow")
self.write_file(self.rc, PYPIRC)
# let's run it
diff --git a/Lib/packaging/tests/test_command_upload_docs.py b/Lib/packaging/tests/test_command_upload_docs.py
index 4162e2a..803e733 100644
--- a/Lib/packaging/tests/test_command_upload_docs.py
+++ b/Lib/packaging/tests/test_command_upload_docs.py
@@ -71,9 +71,8 @@ class UploadDocsTestCase(support.TempdirManager,
if sample_dir is None:
sample_dir = self.mkdtemp()
os.mkdir(os.path.join(sample_dir, "docs"))
- self.write_file(os.path.join(sample_dir, "docs", "index.html"),
- "Ce mortel ennui")
- self.write_file(os.path.join(sample_dir, "index.html"), "Oh la la")
+ self.write_file((sample_dir, "docs", "index.html"), "Ce mortel ennui")
+ self.write_file((sample_dir, "index.html"), "Oh la la")
return sample_dir
def test_zip_dir(self):
diff --git a/Lib/packaging/tests/test_create.py b/Lib/packaging/tests/test_create.py
index b896619..16dbfb7 100644
--- a/Lib/packaging/tests/test_create.py
+++ b/Lib/packaging/tests/test_create.py
@@ -80,8 +80,7 @@ class CreateTestCase(support.TempdirManager,
os.mkdir(os.path.join(tempdir, dir_))
for file_ in files:
- path = os.path.join(tempdir, file_)
- self.write_file(path, 'xxx')
+ self.write_file((tempdir, file_), 'xxx')
mainprogram._find_files()
mainprogram.data['packages'].sort()
diff --git a/Lib/packaging/tests/test_dist.py b/Lib/packaging/tests/test_dist.py
index de68961..3089f36 100644
--- a/Lib/packaging/tests/test_dist.py
+++ b/Lib/packaging/tests/test_dist.py
@@ -6,7 +6,7 @@ import textwrap
import packaging.dist
from packaging.dist import Distribution
-from packaging.command import set_command
+from packaging.command import set_command, _COMMANDS
from packaging.command.cmd import Command
from packaging.errors import PackagingModuleError, PackagingOptionError
from packaging.tests import captured_stdout
@@ -28,6 +28,9 @@ class test_dist(Command):
def finalize_options(self):
pass
+ def run(self):
+ pass
+
class DistributionTestCase(support.TempdirManager,
support.LoggingCatcher,
@@ -38,12 +41,18 @@ class DistributionTestCase(support.TempdirManager,
def setUp(self):
super(DistributionTestCase, self).setUp()
+ # XXX this is ugly, we should fix the functions to accept args
+ # (defaulting to sys.argv)
self.argv = sys.argv, sys.argv[:]
del sys.argv[1:]
+ self._commands = _COMMANDS.copy()
def tearDown(self):
sys.argv = self.argv[0]
sys.argv[:] = self.argv[1]
+ # XXX maybe we need a public API to remove commands
+ _COMMANDS.clear()
+ _COMMANDS.update(self._commands)
super(DistributionTestCase, self).tearDown()
@unittest.skip('needs to be updated')
diff --git a/Lib/packaging/tests/test_mixin2to3.py b/Lib/packaging/tests/test_mixin2to3.py
index 14a7487..000a992 100644
--- a/Lib/packaging/tests/test_mixin2to3.py
+++ b/Lib/packaging/tests/test_mixin2to3.py
@@ -1,4 +1,3 @@
-import sys
import textwrap
from packaging.tests import unittest, support
diff --git a/Lib/packaging/tests/test_uninstall.py b/Lib/packaging/tests/test_uninstall.py
index 8f094f4..2168b6f 100644
--- a/Lib/packaging/tests/test_uninstall.py
+++ b/Lib/packaging/tests/test_uninstall.py
@@ -61,8 +61,7 @@ class UninstallTestCase(support.TempdirManager,
kw['pkg'] = pkg
pkg_dir = os.path.join(project_dir, pkg)
- os.mkdir(pkg_dir)
- os.mkdir(os.path.join(pkg_dir, 'sub'))
+ os.makedirs(os.path.join(pkg_dir, 'sub'))
self.write_file((project_dir, 'setup.cfg'), SETUP_CFG % kw)
self.write_file((pkg_dir, '__init__.py'), '#')
diff --git a/Lib/packaging/tests/test_util.py b/Lib/packaging/tests/test_util.py
index 4d8614a..92aa72a 100644
--- a/Lib/packaging/tests/test_util.py
+++ b/Lib/packaging/tests/test_util.py
@@ -356,24 +356,20 @@ class UtilTestCase(support.EnvironRestorer,
#
root = self.mkdtemp()
pkg1 = os.path.join(root, 'pkg1')
- os.mkdir(pkg1)
- self.write_file(os.path.join(pkg1, '__init__.py'))
- os.mkdir(os.path.join(pkg1, 'pkg2'))
- self.write_file(os.path.join(pkg1, 'pkg2', '__init__.py'))
- os.mkdir(os.path.join(pkg1, 'pkg3'))
- self.write_file(os.path.join(pkg1, 'pkg3', '__init__.py'))
- os.mkdir(os.path.join(pkg1, 'pkg3', 'pkg6'))
- self.write_file(os.path.join(pkg1, 'pkg3', 'pkg6', '__init__.py'))
- os.mkdir(os.path.join(pkg1, 'pkg4'))
- os.mkdir(os.path.join(pkg1, 'pkg4', 'pkg8'))
- self.write_file(os.path.join(pkg1, 'pkg4', 'pkg8', '__init__.py'))
- pkg5 = os.path.join(root, 'pkg5')
- os.mkdir(pkg5)
- self.write_file(os.path.join(pkg5, '__init__.py'))
+ os.makedirs(os.path.join(pkg1, 'pkg2'))
+ os.makedirs(os.path.join(pkg1, 'pkg3', 'pkg6'))
+ os.makedirs(os.path.join(pkg1, 'pkg4', 'pkg8'))
+ os.makedirs(os.path.join(root, 'pkg5'))
+ self.write_file((pkg1, '__init__.py'))
+ self.write_file((pkg1, 'pkg2', '__init__.py'))
+ self.write_file((pkg1, 'pkg3', '__init__.py'))
+ self.write_file((pkg1, 'pkg3', 'pkg6', '__init__.py'))
+ self.write_file((pkg1, 'pkg4', 'pkg8', '__init__.py'))
+ self.write_file((root, 'pkg5', '__init__.py'))
res = find_packages([root], ['pkg1.pkg2'])
- self.assertEqual(set(res), set(['pkg1', 'pkg5', 'pkg1.pkg3',
- 'pkg1.pkg3.pkg6']))
+ self.assertEqual(sorted(res),
+ ['pkg1', 'pkg1.pkg3', 'pkg1.pkg3.pkg6', 'pkg5'])
def test_resolve_name(self):
# test raw module name
diff --git a/Lib/packaging/tests/test_version.py b/Lib/packaging/tests/test_version.py
index 2c86111..c863362 100644
--- a/Lib/packaging/tests/test_version.py
+++ b/Lib/packaging/tests/test_version.py
@@ -1,6 +1,5 @@
"""Tests for packaging.version."""
import doctest
-import os
from packaging.version import NormalizedVersion as V
from packaging.version import HugeMajorVersionNumError, IrrationalVersionError
@@ -46,7 +45,6 @@ class VersionTestCase(unittest.TestCase):
def test_from_parts(self):
for v, s in self.versions:
- parts = v.parts
v2 = V.from_parts(*v.parts)
self.assertEqual(v, v2)
self.assertEqual(str(v), str(v2))
@@ -192,7 +190,7 @@ class VersionTestCase(unittest.TestCase):
'Hey (>=2.5,<2.7)')
for predicate in predicates:
- v = VersionPredicate(predicate)
+ VersionPredicate(predicate)
self.assertTrue(VersionPredicate('Hey (>=2.5,<2.7)').match('2.6'))
self.assertTrue(VersionPredicate('Ho').match('2.6'))