git: a53ef6eaee3f - main - devel/py-e3-testsuite: New Port

From: Robert Clausecker <fuz_at_FreeBSD.org>
Date: Sun, 15 Mar 2026 15:31:09 UTC
The branch main has been updated by fuz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=a53ef6eaee3fe2ae091b092066693d14079ce244

commit a53ef6eaee3fe2ae091b092066693d14079ce244
Author:     Alastair Hogge <agh@riseup.net>
AuthorDate: 2026-03-14 05:53:35 +0000
Commit:     Robert Clausecker <fuz@FreeBSD.org>
CommitDate: 2026-03-15 15:30:38 +0000

    devel/py-e3-testsuite: New Port
    
    e3-testsuite is a Python library built on top of e3-core. Its purpose it to
    provide building blocks for software projects to create testsuites in a simple
    way.
    
    WWW: https://pypi.org/project/e3-testsuite
    
    PR:             293521
---
 devel/Makefile                  |  1 +
 devel/py-e3-testsuite/Makefile  | 37 +++++++++++++++++++++++++++++++++++++
 devel/py-e3-testsuite/distinfo  |  3 +++
 devel/py-e3-testsuite/pkg-descr |  4 ++++
 4 files changed, 45 insertions(+)

diff --git a/devel/Makefile b/devel/Makefile
index 4e00a1bca852..a50cc147be54 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -4877,6 +4877,7 @@
     SUBDIR += py-durus
     SUBDIR += py-dynrules
     SUBDIR += py-e3-core
+    SUBDIR += py-e3-testsuite
     SUBDIR += py-easydict
     SUBDIR += py-easyprocess
     SUBDIR += py-editables
diff --git a/devel/py-e3-testsuite/Makefile b/devel/py-e3-testsuite/Makefile
new file mode 100644
index 000000000000..cf680ec86fea
--- /dev/null
+++ b/devel/py-e3-testsuite/Makefile
@@ -0,0 +1,37 @@
+PORTNAME=	e3_testsuite
+DISTVERSION=	27.3
+CATEGORIES=	devel python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	agh@riseup.net
+COMMENT=	Generic testsuite framework in Python
+WWW=		https://pypi.org/project/e3-testsuite/
+
+LICENSE=	GPLv3
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}setuptools>=61.0.0:devel/py-setuptools@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}e3-core>0:devel/py-e3-core@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR}
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}e3-core>0:devel/py-e3-core@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR}
+
+USES=		python
+USE_PYTHON=	autoplist concurrent pep517 pytest
+
+EXTRACT_AFTER_ARGS=	${_DIST_EXCLUDES:S,^,--exclude ,}
+
+NO_ARCH=	yes
+
+# Conflicts with ${LOCALBASE}/lib/python3.11/site-packages/e3/py.typed from
+# devel/py-e3-core, it can be inherited via devel/py-e3-core ${RUN_DEPENDS}
+_DIST_EXCLUDES=	src/e3/py.typed
+
+TEST_ENV=	PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} \
+		PATH=${STAGEDIR}${PREFIX}/bin/:${PATH}
+DO_MAKE_TEST=	${SETENVI} ${WRK_ENV} ${TEST_ENV} ${PYTHON_CMD} -m ${TEST_TARGET}
+TEST_TARGET=	pytest
+
+.include <bsd.port.mk>
diff --git a/devel/py-e3-testsuite/distinfo b/devel/py-e3-testsuite/distinfo
new file mode 100644
index 000000000000..d6ce7d8c3166
--- /dev/null
+++ b/devel/py-e3-testsuite/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1772330574
+SHA256 (e3_testsuite-27.3.tar.gz) = bf4d65997fe2dc4eb8b7a34dcafe1db85210628473365ee2aa1a013d7769d38e
+SIZE (e3_testsuite-27.3.tar.gz) = 175923
diff --git a/devel/py-e3-testsuite/pkg-descr b/devel/py-e3-testsuite/pkg-descr
new file mode 100644
index 000000000000..10a1be843216
--- /dev/null
+++ b/devel/py-e3-testsuite/pkg-descr
@@ -0,0 +1,4 @@
+e3-testsuite is a Python library built on top of e3-core. Its purpose it to
+provide building blocks for software projects to create testsuites in a simple
+way. This is a generic library, therefore, the targeted software does not need
+to use Python.