aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2015-01-02 10:25:29 -0500
committerJason R. Coombs <jaraco@jaraco.com>2015-01-02 10:25:29 -0500
commit08bac0ab2f411b7d50d04d8df66d24d24de6644b (patch)
tree1da2822ced36cec557e4173e4f6af7f1f8684e68
parentdeef22ce4589e31cc23c4e4d570ee6fab75bd06c (diff)
downloadexternal_python_setuptools-08bac0ab2f411b7d50d04d8df66d24d24de6644b.tar.gz
external_python_setuptools-08bac0ab2f411b7d50d04d8df66d24d24de6644b.tar.bz2
external_python_setuptools-08bac0ab2f411b7d50d04d8df66d24d24de6644b.zip
Extract fixture for the environment.
-rw-r--r--setuptools/tests/test_egg_info.py84
1 files changed, 47 insertions, 37 deletions
diff --git a/setuptools/tests/test_egg_info.py b/setuptools/tests/test_egg_info.py
index 77d2eee7..a1caf9fd 100644
--- a/setuptools/tests/test_egg_info.py
+++ b/setuptools/tests/test_egg_info.py
@@ -1,6 +1,8 @@
import os
import stat
+import pytest
+
from . import environment
from .textwrap import DALS
from . import contexts
@@ -29,53 +31,61 @@ class TestEggInfo:
print('hello')
"""))
- def test_egg_base_installed_egg_info(self, tmpdir_cwd):
- self._create_project()
- with contexts.tempdir(prefix='setuptools-test.') as temp_dir:
- os.chmod(temp_dir, stat.S_IRWXU)
+ @pytest.yield_fixture
+ def env(self):
+ class Environment(str): pass
+
+ with contexts.tempdir(prefix='setuptools-test.') as env_dir:
+ env = Environment(env_dir)
+ os.chmod(env_dir, stat.S_IRWXU)
subs = 'home', 'lib', 'scripts', 'data', 'egg-base'
- paths = dict(
- (dirname, os.path.join(temp_dir, dirname))
+ env.paths = dict(
+ (dirname, os.path.join(env_dir, dirname))
for dirname in subs
)
- list(map(os.mkdir, paths.values()))
- config = os.path.join(paths['home'], '.pydistutils.cfg')
+ list(map(os.mkdir, env.paths.values()))
+ config = os.path.join(env.paths['home'], '.pydistutils.cfg')
with open(config, 'w') as f:
f.write(DALS("""
[egg_info]
egg-base = %(egg-base)s
- """ % paths
+ """ % env.paths
))
- environ = os.environ.copy().update(
- HOME=paths['home'],
- )
- cmd = [
- 'install',
- '--home', paths['home'],
- '--install-lib', paths['lib'],
- '--install-scripts', paths['scripts'],
- '--install-data', paths['data'],
- ]
- code, data = environment.run_setup_py(
- cmd=cmd,
- pypath=os.pathsep.join([paths['lib'], str(tmpdir_cwd)]),
- data_stream=1,
- env=environ,
- )
- if code:
- raise AssertionError(data)
+ yield env
+
+ def test_egg_base_installed_egg_info(self, tmpdir_cwd, env):
+ self._create_project()
+
+ environ = os.environ.copy().update(
+ HOME=env.paths['home'],
+ )
+ cmd = [
+ 'install',
+ '--home', env.paths['home'],
+ '--install-lib', env.paths['lib'],
+ '--install-scripts', env.paths['scripts'],
+ '--install-data', env.paths['data'],
+ ]
+ code, data = environment.run_setup_py(
+ cmd=cmd,
+ pypath=os.pathsep.join([env.paths['lib'], str(tmpdir_cwd)]),
+ data_stream=1,
+ env=environ,
+ )
+ if code:
+ raise AssertionError(data)
- actual = self._find_egg_info_files(paths['lib'])
+ actual = self._find_egg_info_files(env.paths['lib'])
- expected = [
- 'PKG-INFO',
- 'SOURCES.txt',
- 'dependency_links.txt',
- 'entry_points.txt',
- 'not-zip-safe',
- 'top_level.txt',
- ]
- assert sorted(actual) == expected
+ expected = [
+ 'PKG-INFO',
+ 'SOURCES.txt',
+ 'dependency_links.txt',
+ 'entry_points.txt',
+ 'not-zip-safe',
+ 'top_level.txt',
+ ]
+ assert sorted(actual) == expected
def _find_egg_info_files(self, root):
results = (