On 2022-11-28 10:44, Zheng Qiu wrote:
Add ptest provided from the source code, and run it using pytest.
Since the tarball provided with pypi does not include ptest, switch the
source to be its git repo.
ptest result:
PASS FAIL SKIP
qemux86-64 5 3 1
qemuarm64 5 3 1
This issue exists since inotify adds unit test support, and it is
reported here: https://github.com/dsoprea/PyInotify/issues/95
Signed-off-by: Zheng Qiu <zheng.qiu@...>
---
.../python/python3-inotify/run-ptest | 3 ++
.../python/python3-inotify_0.2.10.bb | 14 --------
.../python/python3-inotify_git.bb | 35 +++++++++++++++++++
3 files changed, 38 insertions(+), 14 deletions(-)
create mode 100644 meta-python/recipes-devtools/python/python3-inotify/run-ptest
delete mode 100644 meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
create mode 100644 meta-python/recipes-devtools/python/python3-inotify_git.bb
diff --git a/meta-python/recipes-devtools/python/python3-inotify/run-ptest b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
new file mode 100644
index 000000000..3385d6893
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-inotify/run-ptest
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+pytest -o log_cli=true -o log_cli_level=INFO | sed -e 's/\[...%\]//g'| sed -e 's/PASSED/PASS/g'| sed -e 's/FAILED/FAIL/g'|sed -e 's/SKIPED/SKIP/g'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS"){printf "%s: %s\n", $NF, $0}else{print}}'| awk '{if ($NF=="PASS" || $NF=="FAIL" || $NF=="SKIP" || $NF=="XFAIL" || $NF=="XPASS") {$NF="";print $0}else{print}}'
diff --git a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb b/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
deleted file mode 100644
index 524c3a0d2..000000000
--- a/meta-python/recipes-devtools/python/python3-inotify_0.2.10.bb
+++ /dev/null
@@ -1,14 +0,0 @@
-SUMMARY = "An adapter to Linux kernel support for inotify directory-watching."
-AUTHOR = "Dustin Oprea"
-HOMEPAGE = "https://pypi.org/project/inotify/"
-LICENSE = "GPL-2.0-only"
-LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginline=28;endline=28"
-
-SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
-
-inherit pypi setuptools3
-
-RDEPENDS:${PN} += " \
- python3-ctypes \
- python3-logging \
-"
diff --git a/meta-python/recipes-devtools/python/python3-inotify_git.bb b/meta-python/recipes-devtools/python/python3-inotify_git.bb
new file mode 100644
index 000000000..15fb92eed
--- /dev/null
+++ b/meta-python/recipes-devtools/python/python3-inotify_git.bb
@@ -0,0 +1,35 @@
+SUMMARY = "An adapter to Linux kernel support for inotify directory-watching."
+AUTHOR = "Dustin Oprea"
+HOMEPAGE = "https://pypi.org/project/inotify/"
+LICENSE = "GPL-2.0-only"
+LIC_FILES_CHKSUM = "file://setup.py;md5=79b7ec72aa0d446a552d3cceb5799e41;beginline=28;endline=28"
+
+SRC_URI[sha256sum] = "974a623a338482b62e16d4eb705fb863ed33ec178680fc3e96ccdf0df6c02a07"
+
+SRC_URI = " \
+ git://github.com/dsoprea/pyinotify.git;branch=master;protocol=https \
+ file://run-ptest \
+"
+
+SRCREV = "9be6a51d1660991562eefaaddefa757ca0e0e00f"
This is the 2nd from top commit:
$ git log --oneline -4
f77596a (HEAD -> master, origin/master, origin/HEAD) Add Dockerfile
9be6a51 Fix constant in adapter to match with DELETE events
269d541 etup.cfg: Add missing newline
8e79335 tests/test_inotify.py: Canonicalize import
We don't need the Dockerfile so that's fine.
+
+S = "${WORKDIR}/git"
+
+inherit setuptools3 ptest
+PIP_INSTALL_PACKAGE = "inotify"
+PIP_INSTALL_DIST_PATH = "${S}/dist"
Apparently needed so fine with me.
+
+
+RDEPENDS:${PN} += " \
+ python3-ctypes \
+ python3-logging \
+"
+
+RDEPENDS:${PN}-ptest += " \
+ ${PYTHON_PN}-pytest \
+"
+
+do_install_ptest() {
+ install -d ${D}${PTEST_PATH}/tests
+ cp -rf ${S}/tests/* ${D}${PTEST_PATH}/tests/
+}
--
# Randy MacLeod
# Wind River Linux