diff mbox series

[meta-oe] botan: add ptest support

Message ID 20251215190818.1006477-1-skandigraun@gmail.com
State New
Headers show
Series [meta-oe] botan: add ptest support | expand

Commit Message

Gyorgy Sarvari Dec. 15, 2025, 7:08 p.m. UTC
The test suite takes just around 30s to execute.

Sample output:

root@qemux86-64:~# ptest-runner
START: ptest-runner
2025-12-15T19:02
BEGIN: /usr/lib/botan/ptest
PASS: AES-128/CCM(10,2)
PASS: AES-128/CCM(12,2)
PASS: AES-128/CCM(14,2)
PASS: AES-128/CCM(16,2)
PASS: AES-128/CCM(16,3)
PASS: AES-128/CCM(16,4)
[...lots of lines...]
PASS: XMSS/SHAKE_16_512 verify invalid signature
PASS: XMSS/SHAKE_20_256 verify invalid signature
PASS: XMSS/SHAKE_20_512 verify invalid signature
PASS: ZFEC encoding/decoding
Tests complete ran 3375688 tests in 28.38 sec all tests ok
DURATION: 29
END: /usr/lib/botan/ptest
2025-12-15T19:02
STOP: ptest-runner
TOTAL: 1 FAIL: 0

Tested also by forcing some tests to fail, which was also displayed correctly.

Signed-off-by: Gyorgy Sarvari <skandigraun@gmail.com>
---
 meta-oe/conf/include/ptest-packagelists-meta-oe.inc | 1 +
 meta-oe/recipes-crypto/botan/botan/run-ptest        | 2 ++
 meta-oe/recipes-crypto/botan/botan_3.10.0.bb        | 8 +++++---
 3 files changed, 8 insertions(+), 3 deletions(-)
 create mode 100644 meta-oe/recipes-crypto/botan/botan/run-ptest
diff mbox series

Patch

diff --git a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
index d092c3c327..d475108cfc 100644
--- a/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
+++ b/meta-oe/conf/include/ptest-packagelists-meta-oe.inc
@@ -9,6 +9,7 @@ 
 PTESTS_FAST_META_OE = "\
     asio \
     audiofile \
+    botan \
     cli11 \
     cmocka \
     cunit \
diff --git a/meta-oe/recipes-crypto/botan/botan/run-ptest b/meta-oe/recipes-crypto/botan/botan/run-ptest
new file mode 100644
index 0000000000..42ddb161eb
--- /dev/null
+++ b/meta-oe/recipes-crypto/botan/botan/run-ptest
@@ -0,0 +1,2 @@ 
+#!/bin/sh
+botan-test --data-dir=/usr/share/botan/tests/data/ | tee ./test.out | grep " ran " | sed 's/^\(.*\) ran .* all ok$/PASS: \1/; s/^\(.*\) ran .* FAILED$/FAIL: \1/'
diff --git a/meta-oe/recipes-crypto/botan/botan_3.10.0.bb b/meta-oe/recipes-crypto/botan/botan_3.10.0.bb
index e079dd73de..dcc0e6aa77 100644
--- a/meta-oe/recipes-crypto/botan/botan_3.10.0.bb
+++ b/meta-oe/recipes-crypto/botan/botan_3.10.0.bb
@@ -4,12 +4,13 @@  LICENSE = "BSD-2-Clause"
 LIC_FILES_CHKSUM = "file://license.txt;md5=3f911cecfc74a2d9f1ead9a07bd92a6e"
 SECTION = "libs"
 
-SRC_URI = "https://botan.randombit.net/releases/Botan-${PV}.tar.xz"
+SRC_URI = "https://botan.randombit.net/releases/Botan-${PV}.tar.xz \
+           file://run-ptest"
 SRC_URI[sha256sum] = "fde194236f6d5434f136ea0a0627f6cc9d26af8b96e9f1e1c7d8c82cd90f4f24"
 
 S = "${UNPACKDIR}/Botan-${PV}"
 
-inherit python3native siteinfo lib_package
+inherit python3native siteinfo lib_package ptest
 
 CPU ?= "${TARGET_ARCH}"
 CPU:x86 = "x86_32"
@@ -55,7 +56,8 @@  FILES:${PN}-python3 = "${libdir}/python3"
 
 RDEPENDS:${PN}-python3 += "python3"
 RDEPENDS:${PN}-bin  += "${PN}"
-RDEPENDS:${PN}-test += "${PN}"
+RDEPENDS:${PN}-test += "${PN} ca-certificates"
+RDEPENDS:${PN}-ptest += "${PN}-test"
 FILES:${PN}:remove   = "${bindir}/*"
 FILES:${PN}-bin:remove   = "${bindir}/*"
 FILES:${PN}-bin   = "${bindir}/botan"