blob: b3df1302ab77a07a51d3c25f54f964f92ed268c7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
|
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..13} )
inherit distutils-r1 pypi
DESCRIPTION="HTTP client mock for Python"
HOMEPAGE="
https://github.com/gabrielfalcao/httpretty/
https://pypi.org/project/httpretty/
"
SLOT="0"
LICENSE="MIT"
KEYWORDS="amd64 arm arm64 ppc ppc64 ~riscv sparc x86"
IUSE="test-rust"
RDEPEND="
dev-python/urllib3[${PYTHON_USEDEP}]
"
BDEPEND="
test? (
dev-python/freezegun[${PYTHON_USEDEP}]
>=dev-python/requests-1.1[${PYTHON_USEDEP}]
dev-python/sure[${PYTHON_USEDEP}]
>=dev-python/tornado-2.2[${PYTHON_USEDEP}]
)
"
# These are optional test deps, that are used to test compatibility
# with various HTTP libs. We prefer pulling them in whenever possible
# to increase test coverage but we can live without them.
# We're skipping redis entirely since it requires a running server.
BDEPEND+="
test? (
test-rust? (
dev-python/pyopenssl[${PYTHON_USEDEP}]
)
>=dev-python/boto3-1.17.72[${PYTHON_USEDEP}]
dev-python/httplib2[${PYTHON_USEDEP}]
>=dev-python/httpx-0.18.1[${PYTHON_USEDEP}]
)
"
distutils_enable_tests pytest
PATCHES=(
"${FILESDIR}/${P}-pytest.patch"
)
python_test() {
local EPYTEST_IGNORE=(
# this seems to be a stress test
tests/bugfixes/pytest/test_426_mypy_segfault.py
# passthrough tests require Internet access
tests/functional/test_passthrough.py
# eventlet is masked for removal
tests/bugfixes/nosetests/test_eventlet.py
)
local EPYTEST_DESELECT=(
# regressions with newer dev-python/requests
tests/functional/test_requests.py::test_httpretty_should_allow_registering_regexes_with_streaming_responses
tests/functional/test_requests.py::test_httpretty_should_handle_paths_starting_with_two_slashes
)
local ignore_by_dep=(
dev-python/boto3:tests/bugfixes/nosetests/test_416_boto3.py
dev-python/httplib2:tests/functional/test_httplib2.py
dev-python/httpx:tests/bugfixes/nosetests/test_414_httpx.py
dev-python/pyopenssl:tests/bugfixes/nosetests/test_417_openssl.py
)
local x
for x in "${ignore_by_dep[@]}"; do
if ! has_version "${x%:*}[${PYTHON_USEDEP}]"; then
EPYTEST_IGNORE+=( "${x#*:}" )
fi
done
epytest
}
|