summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMartin Weinelt <hexa@darmstadt.ccc.de>2024-05-08 10:52:41 +0200
committerMartin Weinelt <hexa@darmstadt.ccc.de>2024-05-08 10:52:41 +0200
commitab6f01b8f832e275c59696e678653e4d8ddefc76 (patch)
tree33602b0f6b80a6dfa21dd19b49d13b6f4b87e4e4
parent84e7c77c2a31a19fe5a34a8a38a01989363ee868 (diff)
python312Pacakges.aiocache: enable tests
-rw-r--r--pkgs/development/python-modules/aiocache/default.nix54
1 files changed, 50 insertions, 4 deletions
diff --git a/pkgs/development/python-modules/aiocache/default.nix b/pkgs/development/python-modules/aiocache/default.nix
index fd4e5f3a154a..5d78252791b3 100644
--- a/pkgs/development/python-modules/aiocache/default.nix
+++ b/pkgs/development/python-modules/aiocache/default.nix
@@ -1,8 +1,15 @@
{ lib
+, aiohttp
+, aiomcache
, buildPythonPackage
, fetchFromGitHub
+, marshmallow
, msgpack
+, pkgs
, pythonOlder
+, pytest-asyncio
+, pytest-mock
+, pytestCheckHook
, redis
, setuptools
}:
@@ -21,21 +28,60 @@ buildPythonPackage rec {
hash = "sha256-yvXDNJL8uxReaU81klVWudJwh1hmvg5GeeILcNpm/YA=";
};
- nativeBuildInputs = [
+ postPatch = ''
+ substituteInPlace setup.cfg \
+ --replace-fail "--cov=aiocache --cov=tests/ --cov-report term" ""
+ '';
+
+ build-system = [
setuptools
];
- passthru.optional-dependencies = {
+ optional-dependencies = {
redis = [
redis
];
+ memcached = [
+ aiomcache
+ ];
msgpack = [
msgpack
];
};
- # aiomcache would be required but last release was in 2017
- doCheck = false;
+ nativeCheckInputs = [
+ aiohttp
+ marshmallow
+ pytest-asyncio
+ pytest-mock
+ pytestCheckHook
+ ] ++ lib.flatten (lib.attrValues optional-dependencies);
+
+ pytestFlagsArray = [
+ "-W" "ignore::DeprecationWarning"
+ # TypeError: object MagicMock can't be used in 'await' expression
+ "--deselect=tests/ut/backends/test_redis.py::TestRedisBackend::test_close"
+ ];
+
+ disabledTests = [
+ # calls apache benchmark and fails, no usable output
+ "test_concurrency_error_rates"
+ ];
+
+ preCheck = ''
+ ${lib.getBin pkgs.redis}/bin/redis-server &
+ REDIS_PID=$!
+
+ ${lib.getBin pkgs.memcached}/bin/memcached &
+ MEMCACHED_PID=$!
+ '';
+
+ postCheck = ''
+ kill $REDIS_PID
+ kill $MEMCACHED_PID
+ '';
+
+ __darwinAllowLocalNetworking = true;
pythonImportsCheck = [
"aiocache"