commit:     f8a484a18c7566ad0656531a0efdb8d385471cbb
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  1 09:57:04 2021 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Nov  1 10:08:55 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f8a484a1

dev-python/django-cacheops: enable tests

Closes: https://bugs.gentoo.org/797865
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 .../django-cacheops/django-cacheops-5.1.ebuild     | 41 ++++++++++++++++++++--
 1 file changed, 39 insertions(+), 2 deletions(-)

diff --git a/dev-python/django-cacheops/django-cacheops-5.1.ebuild 
b/dev-python/django-cacheops/django-cacheops-5.1.ebuild
index 2bcc4a8d194..35821ca12dd 100644
--- a/dev-python/django-cacheops/django-cacheops-5.1.ebuild
+++ b/dev-python/django-cacheops/django-cacheops-5.1.ebuild
@@ -13,12 +13,49 @@ SRC_URI="mirror://pypi/${PN:0:1}"/${PN}/${P}.tar.gz
 LICENSE="BSD"
 SLOT="0"
 KEYWORDS="~amd64"
+IUSE="test"
+RESTRICT="!test? ( test )"
 
-DEPEND="
+RDEPEND="
        >=dev-python/django-1.8[${PYTHON_USEDEP}]
        >=dev-python/redis-py-2.9.1[${PYTHON_USEDEP}]
        >=dev-python/funcy-1.8[${PYTHON_USEDEP}]
        >=dev-python/six-1.4.0[${PYTHON_USEDEP}]
 "
+BDEPEND="
+       test? (
+               ${RDEPEND}
+               dev-db/redis
+       )
+"
+
+src_prepare() {
+       # Remove test dependent on unpackaged before_after
+       sed -e 's/test_lock/_&/' -i tests/test_extras.py || die
+       distutils-r1_src_prepare
+}
+
+python_test() {
+       local -x DJANGO_SETTINGS_MODULE=tests.settings
+       django-admin test -v 2 || die
+}
+
+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
+               daemonize yes
+               pidfile ${redis_pid}
+               port ${redis_port}
+               bind 127.0.0.1
+       EOF
+
+       # Run the tests
+       distutils-r1_src_test
 
-RDEPEND="${DEPEND}"
+       # Clean up afterwards
+       kill "$(<"${redis_pid}")" || die
+}

Reply via email to