|
|
|
# Copyright 1999-2019 Gentoo Authors
|
|
|
|
# Distributed under the terms of the GNU General Public License v2
|
|
|
|
|
|
|
|
EAPI=7
|
|
|
|
|
|
|
|
PYTHON_COMPAT=( pypy python{2_7,3_{5,6}} )
|
|
|
|
|
|
|
|
inherit distutils-r1
|
|
|
|
|
|
|
|
DESCRIPTION="A python library for automating interaction with websites"
|
|
|
|
HOMEPAGE="https://pypi.org/project/MechanicalSoup/"
|
|
|
|
# https://github.com/MechanicalSoup/MechanicalSoup/pull/217
|
|
|
|
SRC_URI="https://github.com/${PN}/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
|
|
|
|
|
|
|
|
LICENSE="MIT"
|
|
|
|
SLOT="0"
|
|
|
|
KEYWORDS="~amd64 ~x86"
|
|
|
|
IUSE="doc examples test"
|
|
|
|
|
|
|
|
# https://github.com/MechanicalSoup/MechanicalSoup/issues/215
|
|
|
|
RESTRICT="test"
|
|
|
|
|
|
|
|
RDEPEND="
|
|
|
|
>=dev-python/beautifulsoup-4.0[${PYTHON_USEDEP}]
|
|
|
|
>=dev-python/requests-2.0[${PYTHON_USEDEP}]
|
|
|
|
>=dev-python/six-1.4[${PYTHON_USEDEP}]
|
|
|
|
dev-python/lxml[${PYTHON_USEDEP}]
|
|
|
|
"
|
|
|
|
DEPEND="
|
|
|
|
dev-python/setuptools[${PYTHON_USEDEP}]
|
|
|
|
doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )
|
|
|
|
test? (
|
|
|
|
${RDEPEND}
|
|
|
|
>=dev-python/requests-mock-1.3.0[${PYTHON_USEDEP}]
|
|
|
|
dev-python/pytest[${PYTHON_USEDEP}]
|
|
|
|
dev-python/pytest-httpbin[${PYTHON_USEDEP}]
|
|
|
|
dev-python/pytest-mock[${PYTHON_USEDEP}]
|
|
|
|
)
|
|
|
|
"
|
|
|
|
|
|
|
|
python_prepare_all() {
|
|
|
|
sed -i "s/'pytest-runner'//" setup.py || die
|
|
|
|
distutils-r1_python_prepare_all
|
|
|
|
}
|
|
|
|
|
|
|
|
python_compile_all() {
|
|
|
|
if use doc; then
|
|
|
|
sphinx-build docs docs/_build/html || die
|
|
|
|
HTML_DOCS=( docs/_build/html/. )
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
python_test() {
|
|
|
|
# Override pytest options to skip coverage and flake8
|
|
|
|
py.test --override-ini="addopts=" \
|
|
|
|
|| die "tests failed with ${EPYTHON}"
|
|
|
|
}
|
|
|
|
|
|
|
|
python_install_all() {
|
|
|
|
if use examples; then
|
|
|
|
docompress -x "/usr/share/doc/${PF}/examples"
|
|
|
|
dodoc -r examples
|
|
|
|
fi
|
|
|
|
distutils-r1_python_install_all
|
|
|
|
}
|