From c011e0e13b946607d4660aae1e0d26522fd2e973 Mon Sep 17 00:00:00 2001 From: classabbyamp Date: Sat, 14 May 2022 15:23:13 -0400 Subject: [PATCH] common/build-style/python3-*: add support for pytest-xdist if python3-pytest-xdist is included in checkdepends, use $XBPS_MAKEJOBS to run tests in parallel. --- common/build-style/python3-module.sh | 6 +++++- common/build-style/python3-pep517.sh | 6 +++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/common/build-style/python3-module.sh b/common/build-style/python3-module.sh index 6ec5225d6aa..a0a694ee4a9 100644 --- a/common/build-style/python3-module.sh +++ b/common/build-style/python3-module.sh @@ -24,10 +24,14 @@ do_build() { } do_check() { + local testjobs if python3 -c 'import pytest' >/dev/null 2>&1; then + if python3 -c 'import xdist' >/dev/null 2>&1; then + testjobs="-n $XBPS_MAKEJOBS" + fi PYTHONPATH="$(cd build/lib* && pwd)" \ ${make_check_pre} \ - python3 -m pytest ${make_check_args} ${make_check_target} + python3 -m pytest ${testjobs} ${make_check_args} ${make_check_target} else # Fall back to deprecated setup.py test orchestration without pytest if [ -z "$make_check_target" ]; then diff --git a/common/build-style/python3-pep517.sh b/common/build-style/python3-pep517.sh index 62cfac7d67d..1eeb4172492 100644 --- a/common/build-style/python3-pep517.sh +++ b/common/build-style/python3-pep517.sh @@ -13,8 +13,12 @@ do_build() { } do_check() { + local testjobs if python3 -c 'import pytest' >/dev/null 2>&1; then - ${make_check_pre} python3 -m pytest ${make_check_args} ${make_check_target} + if python3 -c 'import xdist' >/dev/null 2>&1; then + testjobs="-n $XBPS_MAKEJOBS" + fi + ${make_check_pre} python3 -m pytest ${testjobs} ${make_check_args} ${make_check_target} else msg_warn "Unable to determine tests for PEP517 Python templates" return 0