commit python-pytest-runner for openSUSE:Factory
Hello community, here is the log from the commit of package python-pytest-runner for openSUSE:Factory checked in at 2017-09-29 11:49:39 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-pytest-runner (Old) and /work/SRC/openSUSE:Factory/.python-pytest-runner.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-pytest-runner" Fri Sep 29 11:49:39 2017 rev:9 rq:528800 version:2.12.1 Changes: -------- --- /work/SRC/openSUSE:Factory/python-pytest-runner/python-pytest-runner.changes 2017-03-09 01:46:48.428177201 +0100 +++ /work/SRC/openSUSE:Factory/.python-pytest-runner.new/python-pytest-runner.changes 2017-09-29 11:49:43.558694009 +0200 @@ -1,0 +2,12 @@ +Tue Sep 26 05:22:40 UTC 2017 - arun@gmx.de + +- update to version 2.12.1: + * #32: Fix support for dependency_links. + +- changes from version 2.12: + * #30: Rework support for --allow-hosts and --index-url, removing + dependence on setuptools.Distribution's private + member. Additionally corrects logic in marker evaluation along + with unit tests! + +------------------------------------------------------------------- Old: ---- pytest-runner-2.11.1.tar.gz New: ---- pytest-runner-2.12.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-pytest-runner.spec ++++++ --- /var/tmp/diff_new_pack.zGAwrP/_old 2017-09-29 11:49:44.862510147 +0200 +++ /var/tmp/diff_new_pack.zGAwrP/_new 2017-09-29 11:49:44.862510147 +0200 @@ -15,20 +15,21 @@ # Please submit bugfixes or comments via http://bugs.opensuse.org/ # + %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-pytest-runner -Version: 2.11.1 +Version: 2.12.1 Release: 0 Summary: Simple powerful testing with Python License: MIT Group: Development/Languages/Python Url: http://pytest.org Source: https://files.pythonhosted.org/packages/source/p/pytest-runner/pytest-runner-%{version}.tar.gz -BuildRequires: python-rpm-macros BuildRequires: %{python_module devel} BuildRequires: %{python_module pytest >= 2.8} -BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools_scm >= 1.9} +BuildRequires: %{python_module setuptools} +BuildRequires: python-rpm-macros Requires: python-pytest >= 2.8 Requires: python-setuptools_scm >= 1.9 BuildRoot: %{_tmppath}/%{name}-%{version}-build ++++++ pytest-runner-2.11.1.tar.gz -> pytest-runner-2.12.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/.readthedocs.yml new/pytest-runner-2.12.1/.readthedocs.yml --- old/pytest-runner-2.11.1/.readthedocs.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/pytest-runner-2.12.1/.readthedocs.yml 2017-09-07 03:59:33.000000000 +0200 @@ -0,0 +1,5 @@ +python: + version: 3 + extra_requirements: + - docs + pip_install: true diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/CHANGES.rst new/pytest-runner-2.12.1/CHANGES.rst --- old/pytest-runner-2.11.1/CHANGES.rst 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/CHANGES.rst 2017-09-07 03:59:33.000000000 +0200 @@ -1,3 +1,17 @@ +2.12.1 +~~~~~~ + +* #32: Fix support for ``dependency_links``. + +2.12 +~~~~ + +* #30: Rework support for ``--allow-hosts`` and + ``--index-url``, removing dependence on + ``setuptools.Distribution``'s private member. + Additionally corrects logic in marker evaluation + along with unit tests! + 2.11.1 ~~~~~~ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/PKG-INFO new/pytest-runner-2.12.1/PKG-INFO --- old/pytest-runner-2.11.1/PKG-INFO 2017-02-08 23:02:15.000000000 +0100 +++ new/pytest-runner-2.12.1/PKG-INFO 2017-09-07 04:03:18.000000000 +0200 @@ -1,6 +1,6 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: pytest-runner -Version: 2.11.1 +Version: 2.12.1 Summary: Invoke py.test as distutils command with dependency resolution Home-page: https://github.com/pytest-dev/pytest-runner Author: Jason R. Coombs @@ -133,3 +133,4 @@ Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 Classifier: Framework :: Pytest +Requires-Python: >=2.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/appveyor.yml new/pytest-runner-2.12.1/appveyor.yml --- old/pytest-runner-2.11.1/appveyor.yml 1970-01-01 01:00:00.000000000 +0100 +++ new/pytest-runner-2.12.1/appveyor.yml 2017-09-07 03:59:33.000000000 +0200 @@ -0,0 +1,21 @@ +environment: + + APPVEYOR: true + + matrix: + - PYTHON: "C:\\Python36-x64" + - PYTHON: "C:\\Python27-x64" + +install: + # symlink python from a directory with a space + - "mklink /d \"C:\\Program Files\\Python\" %PYTHON%" + - "SET PYTHON=\"C:\\Program Files\\Python\"" + - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%" + +build: off + +test_script: + - "python -m pip install tox" + - "tox" + +version: '{build}' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/docs/conf.py new/pytest-runner-2.12.1/docs/conf.py --- old/pytest-runner-2.11.1/docs/conf.py 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/docs/conf.py 2017-09-07 03:59:33.000000000 +0200 @@ -1,54 +1,36 @@ #!/usr/bin/env python3 # -*- coding: utf-8 -*- -import os -import sys -import subprocess - -if 'check_output' not in dir(subprocess): - import subprocess32 as subprocess - extensions = [ 'sphinx.ext.autodoc', + 'jaraco.packaging.sphinx', 'rst.linker', ] -# General information about the project. - -root = os.path.join(os.path.dirname(__file__), '..') -setup_script = os.path.join(root, 'setup.py') -fields = ['--name', '--version', '--url', '--author'] -dist_info_cmd = [sys.executable, setup_script] + fields -output_bytes = subprocess.check_output(dist_info_cmd, cwd=root) -project, version, url, author = output_bytes.decode('utf-8').strip().split('\n') - -copyright = '2015-2017 ' + author - -# The full version, including alpha/beta/rc tags. -release = version - master_doc = 'index' link_files = { '../CHANGES.rst': dict( using=dict( GH='https://github.com', - project=project, - url=url, ), replace=[ dict( - pattern=r"(Issue )?#(?P<issue>\d+)", - url='{url}/issues/{issue}', + pattern=r'(Issue )?#(?P<issue>\d+)', + url='{package_url}/issues/{issue}', ), dict( - pattern=r"^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n", - with_scm="{text}\n{rev[timestamp]:%d %b %Y}\n", + pattern=r'^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n', + with_scm='{text}\n{rev[timestamp]:%d %b %Y}\n', ), dict( - pattern=r"PEP[- ](?P<pep_number>\d+)", + pattern=r'PEP[- ](?P<pep_number>\d+)', url='https://www.python.org/dev/peps/pep-{pep_number:0>4}/', ), + dict( + pattern=r'Setuptools #(?P<setuptools_issue>\d+)', + url='https://github.com/pypa/setuptools/issues/{setuptools_issue}/', + ), ], ), } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/docs/requirements.txt new/pytest-runner-2.12.1/docs/requirements.txt --- old/pytest-runner-2.11.1/docs/requirements.txt 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/docs/requirements.txt 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -rst.linker diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/ptr.py new/pytest-runner-2.12.1/ptr.py --- old/pytest-runner-2.11.1/ptr.py 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/ptr.py 2017-09-07 03:59:33.000000000 +0200 @@ -17,6 +17,7 @@ import pkg_resources import setuptools.command.test as orig +from setuptools import Distribution @_contextlib.contextmanager @@ -35,6 +36,46 @@ yield +class CustomizedDist(Distribution): + + allow_hosts = None + index_url = None + + def fetch_build_egg(self, req): + """ Specialized version of Distribution.fetch_build_egg + that respects respects allow_hosts and index_url. """ + from setuptools.command.easy_install import easy_install + dist = Distribution({'script_args': ['easy_install']}) + dist.parse_config_files() + opts = dist.get_option_dict('easy_install') + keep = ( + 'find_links', 'site_dirs', 'index_url', 'optimize', + 'site_dirs', 'allow_hosts' + ) + for key in list(opts): + if key not in keep: + del opts[key] # don't use any other settings + if self.dependency_links: + links = self.dependency_links[:] + if 'find_links' in opts: + links = opts['find_links'][1].split() + links + opts['find_links'] = ('setup', links) + if self.allow_hosts: + opts['allow_hosts'] = ('test', self.allow_hosts) + if self.index_url: + opts['index_url'] = ('test', self.index_url) + install_dir_func = getattr(self, 'get_egg_cache_dir', _os.getcwd) + install_dir = install_dir_func() + cmd = easy_install( + dist, args=["x"], install_dir=install_dir, + exclude_scripts=True, + always_copy=False, build_directory=None, editable=False, + upgrade=False, multi_version=True, no_report=True, user=False + ) + cmd.ensure_finalized() + return cmd.easy_install(req) + + class PyTest(orig.test): """ >>> import setuptools @@ -69,8 +110,8 @@ and matches this environment. """ return ( - marker - and not pkg_resources.invalid_marker(marker) + not marker + or not pkg_resources.invalid_marker(marker) and pkg_resources.evaluate_marker(marker) ) @@ -104,10 +145,10 @@ matching_extras = ( reqs for (name, sep, marker), reqs in spec_extras - # never include extras that fail to pass marker eval - if self.marker_passes(marker) # include unnamed extras or all if self.extras indicated - and (not name or self.extras) + if (not name or self.extras) + # never include extras that fail to pass marker eval + and self.marker_passes(marker) ) results = list(map(dist.fetch_build_eggs, matching_extras)) return _itertools.chain.from_iterable(results) @@ -129,11 +170,15 @@ return null() def _super_run(self): - if hasattr(orig.test, 'install_dists'): - return orig.test.run(self) - - # for backward compatibility with setuptools < 27.3 - installed_dists = self.install_dists(self.distribution) + dist = CustomizedDist() + for attr in 'allow_hosts index_url'.split(): + setattr(dist, attr, getattr(self, attr)) + for attr in ( + 'dependency_links install_requires ' + 'tests_require extras_require ' + ).split(): + setattr(dist, attr, getattr(self.distribution, attr)) + installed_dists = self.install_dists(dist) if self.dry_run: self.announce('skipping tests (dry run)') return @@ -146,47 +191,11 @@ Override run to ensure requirements are available in this session (but don't install them anywhere). """ - self._build_egg_fetcher() self._super_run() if self.result_code: raise SystemExit(self.result_code) return self.result_code - def _build_egg_fetcher(self): - """Build an egg fetcher that respects index_url and allow_hosts""" - # modified from setuptools.dist:Distribution.fetch_build_egg - from setuptools.command.easy_install import easy_install - main_dist = self.distribution - # construct a fake distribution to store the args for easy_install - dist = main_dist.__class__({'script_args': ['easy_install']}) - dist.parse_config_files() - opts = dist.get_option_dict('easy_install') - keep = ( - 'find_links', 'site_dirs', 'index_url', 'optimize', - 'site_dirs', 'allow_hosts' - ) - for key in list(opts.keys()): - if key not in keep: - del opts[key] # don't use any other settings - if main_dist.dependency_links: - links = main_dist.dependency_links[:] - if 'find_links' in opts: - links = opts['find_links'][1].split() + links - opts['find_links'] = ('setup', links) - if self.allow_hosts: - opts['allow_hosts'] = ('test', self.allow_hosts) - if self.index_url: - opts['index_url'] = ('test', self.index_url) - install_dir_func = getattr(dist, 'get_egg_cache_dir', _os.getcwd) - install_dir = install_dir_func() - cmd = easy_install( - dist, args=["x"], install_dir=install_dir, exclude_scripts=True, - always_copy=False, build_directory=None, editable=False, - upgrade=False, multi_version=True, no_report = True - ) - cmd.ensure_finalized() - main_dist._egg_fetcher = cmd - @property def _argv(self): return ['pytest'] + self.addopts diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/pytest_runner.egg-info/PKG-INFO new/pytest-runner-2.12.1/pytest_runner.egg-info/PKG-INFO --- old/pytest-runner-2.11.1/pytest_runner.egg-info/PKG-INFO 2017-02-08 23:02:15.000000000 +0100 +++ new/pytest-runner-2.12.1/pytest_runner.egg-info/PKG-INFO 2017-09-07 04:03:18.000000000 +0200 @@ -1,6 +1,6 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: pytest-runner -Version: 2.11.1 +Version: 2.12.1 Summary: Invoke py.test as distutils command with dependency resolution Home-page: https://github.com/pytest-dev/pytest-runner Author: Jason R. Coombs @@ -133,3 +133,4 @@ Classifier: Programming Language :: Python :: 2.7 Classifier: Programming Language :: Python :: 3 Classifier: Framework :: Pytest +Requires-Python: >=2.6 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/pytest_runner.egg-info/SOURCES.txt new/pytest-runner-2.12.1/pytest_runner.egg-info/SOURCES.txt --- old/pytest-runner-2.11.1/pytest_runner.egg-info/SOURCES.txt 2017-02-08 23:02:15.000000000 +0100 +++ new/pytest-runner-2.12.1/pytest_runner.egg-info/SOURCES.txt 2017-09-07 04:03:18.000000000 +0200 @@ -1,7 +1,9 @@ +.readthedocs.yml .travis.yml CHANGES.rst LICENSE README.rst +appveyor.yml ptr.py pytest.ini setup.cfg @@ -10,11 +12,11 @@ docs/conf.py docs/history.rst docs/index.rst -docs/requirements.txt pytest_runner.egg-info/PKG-INFO pytest_runner.egg-info/SOURCES.txt pytest_runner.egg-info/dependency_links.txt pytest_runner.egg-info/entry_points.txt pytest_runner.egg-info/namespace_packages.txt +pytest_runner.egg-info/requires.txt pytest_runner.egg-info/top_level.txt -tests/requirements.txt \ No newline at end of file +tests/test_ptr.py \ No newline at end of file diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/pytest_runner.egg-info/requires.txt new/pytest-runner-2.12.1/pytest_runner.egg-info/requires.txt --- old/pytest-runner-2.11.1/pytest_runner.egg-info/requires.txt 1970-01-01 01:00:00.000000000 +0100 +++ new/pytest-runner-2.12.1/pytest_runner.egg-info/requires.txt 2017-09-07 04:03:18.000000000 +0200 @@ -0,0 +1,13 @@ + +[docs] +sphinx +jaraco.packaging>=3.2 +rst.linker>=1.9 + +[testing] +pytest>=2.8 +pytest-sugar +pytest-virtualenv + +[testing:python_version=="2.6"] +importlib diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/setup.cfg new/pytest-runner-2.12.1/setup.cfg --- old/pytest-runner-2.11.1/setup.cfg 2017-02-08 23:02:15.000000000 +0100 +++ new/pytest-runner-2.12.1/setup.cfg 2017-09-07 04:03:18.000000000 +0200 @@ -2,11 +2,10 @@ release = dists upload dists = clean --all sdist bdist_wheel -[wheel] +[bdist_wheel] universal = 1 [egg_info] tag_build = tag_date = 0 -tag_svn_revision = 0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/setup.py new/pytest-runner-2.12.1/setup.py --- old/pytest-runner-2.11.1/setup.py 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/setup.py 2017-09-07 03:59:33.000000000 +0200 @@ -11,6 +11,11 @@ name = 'pytest-runner' description = 'Invoke py.test as distutils command with dependency resolution' +nspkg_technique = 'native' +""" +Does this package use "native" namespace packages or +pkg_resources "managed" namespace packages? +""" params = dict( name=name, @@ -20,11 +25,29 @@ description=description or name, long_description=long_description, url="https://github.com/pytest-dev/" + name, - namespace_packages=name.split('.')[:-1], + namespace_packages=( + name.split('.')[:-1] if nspkg_technique == 'managed' + else [] + ), py_modules=['ptr'], + python_requires='>=2.6', install_requires=[ ], extras_require={ + 'testing': [ + 'pytest>=2.8', + 'pytest-sugar', + 'pytest-virtualenv', + ], + 'testing:python_version=="2.6"': [ + # undeclared dependency of pytest-virtualenv + 'importlib', + ], + 'docs': [ + 'sphinx', + 'jaraco.packaging>=3.2', + 'rst.linker>=1.9', + ], }, setup_requires=[ 'setuptools_scm>=1.15.0', @@ -38,7 +61,7 @@ "Programming Language :: Python :: 3", "Framework :: Pytest", ], - entry_points = { + entry_points={ 'distutils.commands': [ 'ptr = ptr:PyTest', 'pytest = ptr:PyTest', diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/tests/requirements.txt new/pytest-runner-2.12.1/tests/requirements.txt --- old/pytest-runner-2.11.1/tests/requirements.txt 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/tests/requirements.txt 1970-01-01 01:00:00.000000000 +0100 @@ -1,2 +0,0 @@ -pytest >= 2.8 -subprocess32; python_version=="2.6" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/tests/test_ptr.py new/pytest-runner-2.12.1/tests/test_ptr.py --- old/pytest-runner-2.11.1/tests/test_ptr.py 1970-01-01 01:00:00.000000000 +0100 +++ new/pytest-runner-2.12.1/tests/test_ptr.py 2017-09-07 03:59:33.000000000 +0200 @@ -0,0 +1,169 @@ +from __future__ import unicode_literals + +import contextlib +import io +import os +import shutil +import sys +import tarfile +import textwrap +import time + +import pytest + + +def DALS(s): + "dedent and left-strip" + return textwrap.dedent(s).lstrip() + + +def _tarfile_open_ex(*args, **kwargs): + """ + Extend result as a context manager. + """ + return contextlib.closing(tarfile.open(*args, **kwargs)) + + +if sys.version_info[:2] < (2, 7) or (3, 0) <= sys.version_info[:2] < (3, 2): + tarfile_open = _tarfile_open_ex +else: + tarfile_open = tarfile.open + + +def make_sdist(dist_path, files): + """ + Create a simple sdist tarball at dist_path, containing the files + listed in ``files`` as ``(filename, content)`` tuples. + """ + + with tarfile_open(dist_path, 'w:gz') as dist: + for filename, content in files: + file_bytes = io.BytesIO(content.encode('utf-8')) + file_info = tarfile.TarInfo(name=filename) + file_info.size = len(file_bytes.getvalue()) + file_info.mtime = int(time.time()) + dist.addfile(file_info, fileobj=file_bytes) + + +@pytest.fixture +def venv(virtualenv): + yield virtualenv + # Workaround virtualenv not cleaning itself as it should... + virtualenv.delete = True + virtualenv.teardown() + + +@pytest.mark.parametrize('setuptools_req, test_args', ( + ('setuptools==27.2.0', ''), + ('setuptools==27.2.0', '--extras'), + ('setuptools==27.3.0', ''), + ('setuptools==27.3.0', '--extras'), + ('setuptools==32.3.1', ''), + ('setuptools==32.3.1', '--extras'), + ('setuptools==36.3.0', ''), + ('setuptools==36.3.0', '--extras'), + ('setuptools' , ''), + ('setuptools' , '--extras'), +)) +def test_egg_fetcher(venv, setuptools_req, test_args): + test_args = test_args.split() + # Install pytest & pytest-runner. + venv.run('python setup.py develop', cwd=os.getcwd()) + venv.run('pip install pytest') + # Install setuptools version. + venv.run('pip install -U'.split() + [setuptools_req]) + # For debugging purposes. + venv.run('pip freeze --all') + # Prepare fake index. + index_dir = (venv.workspace / 'index').mkdir() + for n in range(5): + dist_name = 'barbazquux' + str(n + 1) + dist_version = '0.1' + dist_sdist = '%s-%s.tar.gz' % (dist_name, dist_version) + dist_dir = (index_dir / dist_name).mkdir() + make_sdist(dist_dir / dist_sdist, ( + ('setup.py', textwrap.dedent( + ''' + from setuptools import setup + setup( + name={dist_name!r}, + version={dist_version!r}, + py_modules=[{dist_name!r}], + ) + ''' + ).format(dist_name=dist_name, dist_version=dist_version)), + (dist_name + '.py', ''), + )) + with (dist_dir / 'index.html').open('w') as fp: + fp.write(DALS( + ''' + <!DOCTYPE html><html><body> + <a href="{dist_sdist}" rel="internal">{dist_sdist}</a><br/> + </body></html> + ''' + ).format(dist_sdist=dist_sdist)) + # Move barbazquux1 out of the index. + shutil.move(index_dir / 'barbazquux1', venv.workspace) + barbazquux1_link = ( + 'file://' + str(venv.workspace.abspath()) + + '/barbazquux1/barbazquux1-0.1.tar.gz' + + '#egg=barbazquux1-0.1' + ) + # Prepare fake project. + project_dir = (venv.workspace / 'project-0.1').mkdir() + with open(project_dir / 'setup.py', 'w') as fp: + fp.write(DALS( + ''' + from setuptools import setup + setup( + name='project', + version='0.1', + dependency_links = [ + {barbazquux1_link!r}, + ], + setup_requires=[ + 'pytest-runner', + ], + install_requires=[ + 'barbazquux1', + ], + tests_require=[ + 'pytest', + 'barbazquux2', + ], + extras_require={{ + ':"{sys_platform}" in sys_platform': 'barbazquux3', + ':"barbazquux" in sys_platform': 'barbazquux4', + 'extra': 'barbazquux5', + }} + ) + ''').format(sys_platform=sys.platform, + barbazquux1_link=barbazquux1_link)) + with open(project_dir / 'setup.cfg', 'w') as fp: + fp.write(DALS( + ''' + [easy_install] + index_url = . + ''')) + with open(project_dir / 'test_stuff.py', 'w') as fp: + fp.write(DALS( + ''' + import pytest + + def test_stuff(): + import barbazquux1 + import barbazquux2 + import barbazquux3 + with pytest.raises(ImportError): + import barbazquux4 + if {importable_barbazquux5}: + import barbazquux5 + else: + with pytest.raises(ImportError): + import barbazquux5 + ''').format(importable_barbazquux5=('--extras' in test_args))) + # Run fake project tests. + cmd = 'python setup.py pytest'.split() + cmd += ['--index-url=' + index_dir.abspath()] + cmd += test_args + venv.run(cmd, cwd=project_dir) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/pytest-runner-2.11.1/tox.ini new/pytest-runner-2.12.1/tox.ini --- old/pytest-runner-2.11.1/tox.ini 2017-02-08 23:01:52.000000000 +0100 +++ new/pytest-runner-2.12.1/tox.ini 2017-09-07 03:59:33.000000000 +0200 @@ -1,6 +1,7 @@ -[testenv] -deps = - -rtests/requirements.txt +[tox] +minversion = 2.4 +[testenv] commands = py.test {posargs} usedevelop = True +extras = testing
participants (1)
-
root@hilbert.suse.de