commit: 1e398632b2932fdb6188c73152264a8dd6268994
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 15 01:52:31 2023 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Aug 15 02:39:20 2023 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1e398632
dev-python/fakeredis: Bump to 2.18.0
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
dev-python/fakeredis/Manifest | 1 +
dev-python/fakeredis/fakeredis-2.18.0.ebuild | 78 ++++++++++++++++++++++++++++
2 files changed, 79 insertions(+)
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index d59504782ee1..16f78a20e0c0 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1,2 +1,3 @@
DIST fakeredis-2.16.0.tar.gz 108416 BLAKE2B
0897614e567d59b54a35c18922a33cc79e8d2759614fc13b2dfbbf0e52c802470678cdf497b914762f258e84b50afb178ac1a0604acfdb1520daf3a03ac87a6a
SHA512
a9fdf6da74c9fc650df9720b39a8c2ecb609353d1c535433bd8ca3ff4674f112e2bb06a381ad8f994e7daab78cc41b1bf1c75a0e287af0b41387bf15d05fce5d
DIST fakeredis-2.17.0.tar.gz 110121 BLAKE2B
21b8ce15236aa918d519e2d5c045d1664d6edc4d9f1fd10923bde4779c0a4605685519e17b5edfddec83f6b9e9421539cce037e8a787673b12733ef9cb28df00
SHA512
31da92e0617a6999bb29261b9efdb1b8ac9f790eb1f4500f71d65b7e2ec700095ac30a55230f3c3efe9cd9c535d04a9138596944e2aa684a1e6e9e7158b5c2be
+DIST fakeredis-2.18.0.tar.gz 111601 BLAKE2B
56a7d2e113fa0d2d98f95b4e8d5b7462a311e2e505a19cd5d3067650a0b950ad272b86aae42b748e5854c7f24287fac03f8c61865c05612697324e9f328dfbe9
SHA512
2d67866bbac8f8a12a6414cfae0a8ba925b769c0cb420bfe74ca233de40792f369678752a0d71ce4c0c145f03944fb071ecb234ee40f3f52005587db1929134e
diff --git a/dev-python/fakeredis/fakeredis-2.18.0.ebuild
b/dev-python/fakeredis/fakeredis-2.18.0.ebuild
new file mode 100644
index 000000000000..12cd5e3de69f
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.18.0.ebuild
@@ -0,0 +1,78 @@
+# Copyright 2020-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( pypy3 python3_{10..12} )
+
+inherit distutils-r1 pypi
+
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ dev-python/packaging[${PYTHON_USEDEP}]
+ >=dev-python/redis-4.2[${PYTHON_USEDEP}]
+ <dev-python/sortedcontainers-3[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+python_test() {
+ local EPYTEST_DESELECT=(
+ # also lupa
+ test/test_aioredis2.py::test_failed_script_error
+ # TODO
+ "test/test_fakeredis.py::test_set_get_nx[StrictRedis]"
+ "test/test_fakeredis.py::test_lpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_rpop_count[StrictRedis]"
+ "test/test_fakeredis.py::test_zadd_minus_zero[StrictRedis]"
+
"test/test_mixins/test_pubsub_commands.py::test_pubsub_channels[StrictRedis]"
+
test/test_mixins/test_set_commands.py::test_smismember_wrong_type
+ )
+ local EPYTEST_IGNORE=(
+ # these tests fail a lot...
+ test/test_hypothesis.py
+ )
+ 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
+
+ einfo "Spawning Redis"
+ einfo "NOTE: Port ${redis_port} must be free"
+ "${EPREFIX}"/usr/sbin/redis-server - <<- EOF || die "Unable to start
redis server"
+ daemonize yes
+ pidfile ${redis_pid}
+ port ${redis_port}
+ bind 127.0.0.1
+ EOF
+
+ # Run the tests
+ distutils-r1_src_test
+
+ # Clean up afterwards
+ kill "$(<"${redis_pid}")" || die
+}