*/*: Clean PYTHON_COMPAT of obsolete impls
[gentoo.git] / dev-python / tox / tox-3.2.1.ebuild
1 # Copyright 1999-2020 Gentoo Authors
2 # Distributed under the terms of the GNU General Public License v2
3
4 EAPI=7
5
6 PYTHON_COMPAT=( python{2_7,3_{6,7}} pypy3 )
7
8 inherit distutils-r1
9
10 DESCRIPTION="virtualenv-based automation of test activities"
11 HOMEPAGE="https://tox.readthedocs.io https://github.com/tox-dev/tox https://pypi.org/project/tox/"
12 SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
13
14 LICENSE="MIT"
15 SLOT="0"
16 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sparc ~x86 ~amd64-linux ~x86-linux"
17
18 IUSE="doc test"
19 RESTRICT="!test? ( test )"
20
21 RDEPEND="
22         dev-python/setuptools[${PYTHON_USEDEP}]
23         >=dev-python/virtualenv-1.11.2[${PYTHON_USEDEP}]
24         <dev-python/pluggy-1.0[${PYTHON_USEDEP}]
25         dev-python/pip[${PYTHON_USEDEP}]
26         >=dev-python/py-1.4.17[${PYTHON_USEDEP}]
27         dev-python/six[${PYTHON_USEDEP}]"
28 DEPEND="${RDEPEND}
29         dev-python/setuptools_scm[${PYTHON_USEDEP}]
30         doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
31         test? (
32                 >=dev-python/pytest-3.6[${PYTHON_USEDEP}]
33                 <dev-python/pytest-4.0
34                 <dev-python/pytest-mock-2.0[${PYTHON_USEDEP}]
35         )"
36
37 python_prepare_all() {
38         # remove intersphinx stuff
39         sed -i -e "s/'sphinx.ext.intersphinx',//" doc/conf.py || die
40         distutils-r1_python_prepare_all
41 }
42
43 python_compile_all() {
44         if use doc; then
45                 esetup.py build_sphinx
46                 HTML_DOCS=( "${S}"/doc/build/html/. )
47         fi
48 }
49
50 python_test() {
51         # TODO: find why these 8 tests excluded below fail.
52         pytest -v --no-network \
53                 --deselect tests/test_config.py::test_plugin_require \
54                 --deselect tests/test_docs.py::test_all_rst_ini_blocks_parse \
55                 --deselect tests/test_interpreters.py::test_tox_get_python_executable \
56                 --deselect tests/test_session.py::test_tox_parallel_build_safe \
57                 --deselect tests/test_venv.py::test_install_python3 \
58                 --deselect tests/test_z_cmdline.py::test_alwayscopy \
59                 --deselect tests/test_z_cmdline.py::test_tox_quickstart_script \
60                 --deselect tests/test_z_cmdline.py::test_tox_console_script \
61                 || die "Testsuite failed under ${EPYTHON}"
62 }