summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2022-12-06 06:34:12 +0100
committerMichał Górny <mgorny@gentoo.org>2022-12-06 07:02:23 +0100
commitd392ee6e963c5cb20d7141514bde117e8faf4e74 (patch)
treecf4e9697c93ab220f5ed87a3592d01f56ba10a4d
parentdev-python/patiencediff: Bump to 0.2.10 (diff)
downloadgentoo-d392ee6e.tar.gz
gentoo-d392ee6e.tar.bz2
gentoo-d392ee6e.zip
dev-python/fakeredis: Bump to 2.2.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
-rw-r--r--dev-python/fakeredis/Manifest1
-rw-r--r--dev-python/fakeredis/fakeredis-2.2.0.ebuild87
2 files changed, 88 insertions, 0 deletions
diff --git a/dev-python/fakeredis/Manifest b/dev-python/fakeredis/Manifest
index 034a6f901a78..67493433650d 100644
--- a/dev-python/fakeredis/Manifest
+++ b/dev-python/fakeredis/Manifest
@@ -1,3 +1,4 @@
DIST fakeredis-py-1.10.1.gh.tar.gz 91420 BLAKE2B a88711b5d167aafcf6a74dc538b809a0410c60bff95c82fe81c1236b743d9fc0cacbc9057bcd5df20ed87b22c12b2e9346342e0991556caa51f4e88038fabcb5 SHA512 2a139dde02c00e516959173fbfe5ecae26d20ee56158de9ae7bc57360dabc58e4e919f11ba7979079019d981af8a2cbd17a1d8ac795003e26a7cbcbedd5588a8
DIST fakeredis-py-2.0.0.gh.tar.gz 112218 BLAKE2B 9bbbf76e6fe00a42d25c1688654906a71b93e65a20f3eca2b7d9fd13eedd48251e832e550b37dc82dcf5e65c686c408b291ba60d04c707df7d7d7f396f00190a SHA512 e291782f27cdfa11520eef3b0bbd0d68ec7479a4630ad1e5a38d8d1d28109049fee0288e104e74f72caf9b04db553cc24f22843bd170d8bdb5efc47b8e9f5d6e
DIST fakeredis-py-2.1.0.gh.tar.gz 128595 BLAKE2B f0b2e8ed9ec4156702f4e65e683f40cf79e1fde12ac70b16388ba65e9e49c8f4c92ade6f02195cc3755768fb2858d7e4f8970f54fa728c9fb32ac8cc2f68fa4f SHA512 584a2a36185674d0fadedcc6018286c3edc8c36de730ac1cf09abcbe3b0cacf8dd0e4c964a7a0a053509dce0063f48ce13f122d230fbec9965af54c77b277ea5
+DIST fakeredis-py-2.2.0.gh.tar.gz 128817 BLAKE2B 8666427966e6a93cd33f521fbc38ecb9bb99e1c1a23506437d48bc6113f272aa89a465dc794b5130ef6dfa584f75f159fce0e3b6a50e5cb89b3bfe43ebcd89cd SHA512 857033a6362a6088cec715571d74a9aa1eb3eb8356ed904b10831540ce5be62d798a211d52fb3d8effab253e50fdb3f2a530d39bd722d8be357426f53fb41fe7
diff --git a/dev-python/fakeredis/fakeredis-2.2.0.ebuild b/dev-python/fakeredis/fakeredis-2.2.0.ebuild
new file mode 100644
index 000000000000..a75d02ef0771
--- /dev/null
+++ b/dev-python/fakeredis/fakeredis-2.2.0.ebuild
@@ -0,0 +1,87 @@
+# Copyright 2020-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=poetry
+PYTHON_COMPAT=( pypy3 python3_{8..11} )
+
+inherit distutils-r1
+
+MY_P=fakeredis-py-${PV}
+DESCRIPTION="Fake implementation of redis API for testing purposes"
+HOMEPAGE="
+ https://github.com/cunla/fakeredis-py/
+ https://pypi.org/project/fakeredis/
+"
+SRC_URI="
+ https://github.com/cunla/fakeredis-py/archive/v${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/redis-py-4.2[${PYTHON_USEDEP}]
+ <dev-python/redis-py-4.5[${PYTHON_USEDEP}]
+ >=dev-python/sortedcontainers-2.4.0[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-db/redis
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ )
+"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ # unpin redis
+ sed -i -e '/redis/s:<[0-9.]*:*:' pyproject.toml || die
+ distutils-r1_src_prepare
+}
+
+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]"
+ )
+ 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
+}