diff options
author | Jason R. Coombs <jaraco@jaraco.com> | 2015-01-02 10:25:29 -0500 |
---|---|---|
committer | Jason R. Coombs <jaraco@jaraco.com> | 2015-01-02 10:25:29 -0500 |
commit | 08bac0ab2f411b7d50d04d8df66d24d24de6644b (patch) | |
tree | 1da2822ced36cec557e4173e4f6af7f1f8684e68 | |
parent | deef22ce4589e31cc23c4e4d570ee6fab75bd06c (diff) | |
download | external_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.py | 84 |
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 = ( |