summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArthur Zamarin <arthurzam@gentoo.org>2021-08-16 21:51:39 +0300
committerArthur Zamarin <arthurzam@gentoo.org>2021-08-16 22:07:54 +0300
commit4cc165caf267ed986672955a8b8f4f685ce71388 (patch)
tree1f5587f3f61fe55532f78e3a195c8c8378e700ba /dev-python/fakeredis
parentdev-python/aioredis: New dep for dev-python/fakeredis (diff)
downloadgentoo-4cc165caf267ed986672955a8b8f4f685ce71388.tar.gz
gentoo-4cc165caf267ed986672955a8b8f4f685ce71388.tar.bz2
gentoo-4cc165caf267ed986672955a8b8f4f685ce71388.zip
dev-python/fakeredis: add 1.6.0, EAPI=8, py3.10
Signed-off-by: Arthur Zamarin <arthurzam@gentoo.org>
Diffstat (limited to 'dev-python/fakeredis')
-rw-r--r--dev-python/fakeredis/Manifest1
-rw-r--r--dev-python/fakeredis/fakeredis-1.6.0.ebuild76
2 files changed, 77 insertions, 0 deletions
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index 14e97ab88d3b..86c02f6b2d57 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1 +1,2 @@
DIST fakeredis-1.5.1.gh.tar.gz 67064 BLAKE2B 6eac029b7de6fb2c9b56a60655b6a224cdcba25fa86662a0423044ab97248984c4c6cfbaacbe4bbb2e3fc6826693791f232c6c55d7f15995d0e5bd00370a9ba8 SHA512 74a238573f9f911e9a39885b52d8c908d51d5620e346b8927c161111ce193566c315999f71d3edb1cb1326970985fd73d533b5483afe0c98ad76798a3c15e242
+DIST fakeredis-1.6.0.gh.tar.gz 70034 BLAKE2B 3e9526bf8a7bdafe2b471f0a9d488f0d654e93666863513444521eefd0ca31dbba7e589431b5dee64b27dbf9c2bcc05c1517f659942aa4491cae42b1d11f45b9 SHA512 7a3aefc161b2396e748b284152e088fc31a49a859259888cf8dcfd3a72045e84079977b0e8f11b571ab00d6c00fcf82dc28a1a50fa75633cf17215553bbd019b
diff --git a/dev-python/fakeredis/fakeredis-1.6.0.ebuild b/dev-python/fakeredis/fakeredis-1.6.0.ebuild
new file mode 100644
index 000000000000..deb7273f1ca5
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-1.6.0.ebuild
@@ -0,0 +1,76 @@
+# Copyright 2020-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( pypy3 python3_{8..10} )
+inherit distutils-r1 optfeature
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/jamesls/fakeredis/
+ https://pypi.org/project/fakeredis/"
+SRC_URI="
+ https://github.com/jamesls/fakeredis/archive/${PV}.tar.gz
+ -> ${P}.gh.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ dev-python/redis-py[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+ dev-python/sortedcontainers[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-python/aioredis[${PYTHON_USEDEP}]
+ dev-python/async_generator[${PYTHON_USEDEP}]
+ dev-python/hypothesis[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+EPYTEST_DESELECT=(
+ test/test_aioredis2.py::test_blocking_unblock
+ test/test_aioredis2.py::test_pubsub
+ "test/test_aioredis2.py::test_repr[fake]"
+ test/test_hypothesis.py::TestJoint::test
+ test/test_hypothesis.py::TestFuzz::test
+)
+
+python_test() {
+ local args=(
+ # tests requiring lupa (lua support)
+ -k 'not test_eval and not test_lua and not test_script'
+ )
+ epytest "${args[@]}"
+}
+
+src_test() {
+ local redis_pid="${T}"/redis.pid
+ local redis_port=6379
+ local redis_test_config="
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ "
+
+ elog "Spawning Redis"
+ elog "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<< "${redis_test_config}" || die
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}
+
+pkg_postinst() {
+ optfeature "Mock aioredis" dev-python/aioredis
+}