mirror of
https://git.yoctoproject.org/poky
synced 2026-02-20 08:29:42 +01:00
ptest-runner: Allow running of specific tests
By default ptest-runner executes all ptests found in a system. With this change, ptest-runner can be given a list of ptest package names to run (the default is still available). For example, to run only the zlib and rt-tests ptests: "ptest-runner zlib rt-tests" (From OE-Core rev: a13333c3e9ab601a11c10aba2a0a55c7fdea2e24) Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
54325b298b
commit
54df911748
55
meta/recipes-support/ptest-runner/files/ptest-runner
Normal file → Executable file
55
meta/recipes-support/ptest-runner/files/ptest-runner
Normal file → Executable file
@@ -1,26 +1,53 @@
|
||||
#!/bin/sh
|
||||
ANYFAILED=no
|
||||
echo "START: $0"
|
||||
|
||||
for libdir in /usr/lib*
|
||||
do
|
||||
|
||||
[ ! -d "$libdir" ] && continue
|
||||
|
||||
for x in `ls -d $libdir/*/ptest 2>/dev/null`
|
||||
determine_ptests_to_run()
|
||||
{
|
||||
for libdir in /usr/lib*
|
||||
do
|
||||
[ ! -f $x/run-ptest ] && continue
|
||||
[ -h `dirname $x` ] && continue
|
||||
[ ! -d "$libdir" ] && continue
|
||||
|
||||
for x in `ls -d $libdir/*/ptest 2>/dev/null`
|
||||
do
|
||||
[ ! -f $x/run-ptest ] && continue
|
||||
[ -h `dirname $x` ] && continue
|
||||
|
||||
#found a ptest in the system
|
||||
PTEST_FOUND=$(basename $(dirname $x))
|
||||
|
||||
# when no pkg-names were specified, by default run each one
|
||||
if [[ -z $@ ]]; then
|
||||
printf " $x"
|
||||
else
|
||||
#check if this ptest has been asked for and add it
|
||||
if [[ $@ =~ $PTEST_FOUND ]]; then
|
||||
printf " $x"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
run_ptests()
|
||||
{
|
||||
ANYFAILED=no
|
||||
|
||||
#the paths were sanity-checked in determine_ptests_to_run()
|
||||
for ptst_path in $PTESTS_TO_RUN
|
||||
do
|
||||
date "+%Y-%m-%dT%H:%M"
|
||||
echo "BEGIN: $x"
|
||||
cd "$x"
|
||||
echo "BEGIN: $ptst_path"
|
||||
cd "$ptst_path"
|
||||
./run-ptest || ANYFAILED=yes
|
||||
echo "END: $x"
|
||||
echo "END: $ptest_path"
|
||||
date "+%Y-%m-%dT%H:%M"
|
||||
done
|
||||
done
|
||||
}
|
||||
|
||||
echo "START: $0"
|
||||
PTESTS_TO_RUN=$(determine_ptests_to_run $@)
|
||||
run_ptests
|
||||
echo "STOP: $0"
|
||||
|
||||
if [ "$ANYFAILED" = "yes" ]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user