On 25 Oct 2022, at 09:25, Yan Xin Kuan via lists.openembedded.org <yanxk.fnst=fujitsu....@lists.openembedded.org> wrote: > @@ -100,6 +100,7 @@ PTESTS_SLOW = "\ > tcl-ptest \ > util-linux-ptest \ > valgrind-ptest \ > + bc-ptest \ > "
Is this really a slow test? > +++ b/meta/recipes-extended/bc/bc/0001-ptest-only-use-bc-in-the-system.patch > @@ -0,0 +1,34 @@ > +From a7a19baf07cde3eaf8f0c007fea47f2c45475874 Mon Sep 17 00:00:00 2001 > +From: Yan Xinkuan <yanxk.f...@fujitsu.com> > +Date: Mon, 24 Oct 2022 16:08:37 +0800 > +Subject: [PATCH] ptest: only use bc in the system > + > +use bc in the system to do ptest. > + > +Upstream-Status: Pending This is very Inappropriate, as we don’t want to send it upstream. > diff --git a/meta/recipes-extended/bc/bc/run-ptest > b/meta/recipes-extended/bc/bc/run-ptest > new file mode 100644 > index 0000000000..7e37e9ef01 > --- /dev/null > +++ b/meta/recipes-extended/bc/bc/run-ptest > @@ -0,0 +1,8 @@ > +#!/bin/bash > +cd ./bc_test > +if ./timetest; then > + echo "PASS: bc/timetest" > +else > + echo "FAIL: bc/timetest" > +fi This won’t do what you think. timetest.sh just runs bc, doesn’t look at $?, and doesn’t use set -e. This means it will *always* return 0. Even if bc crashed on startup, this test case would “pass”. timetest.sh is a tool that runs ‘bc -l’ on some bc scripts, with the bulk of the logic around timing those operations (we don’t care about that) and running against multiple bc implementations (we also don’t care about that). This tells me that timetest.sh is redundant and we can ignore it. My suggestion is to install the Test/*.b files into PTEST_PATH directly, and then a run-ptest can do something like: #! /bin/sh for TEST in *.b; do if bc -l $TEST </dev/null; then echo “PASS: bc/$TEST” else echo “FAIL: bc/$TEST” fi done (you need to connect /dev/null to stdin otherwise bc will wait for interactive input) Note that some of the tests actually announce that they’re failing, but don’t exit with an error code. > PACKAGECONFIG ??= "readline" > PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" > @@ -29,6 +31,23 @@ do_compile:prepend() { > cp -f ${WORKDIR}/libmath.h ${B}/bc/libmath.h > } > > +RDEPENDS:${PN}-ptest += "bash" Don’t use bash unless you need to. There’s no need to use bash here. > +do_install_ptest() { > + install -d ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/atan.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/div.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/exp.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/fact.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/jn.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/ln.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/mul.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/raise.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/sine.b ${D}${PTEST_PATH}/bc_test/ > + install ${S}/Test/sqrt.b ${D}${PTEST_PATH}/bc_test/ Use a glob instead of installing them one-by-one. Ross
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#172252): https://lists.openembedded.org/g/openembedded-core/message/172252 Mute This Topic: https://lists.openembedded.org/mt/94554197/21656 Group Owner: openembedded-core+ow...@lists.openembedded.org Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-