summaryrefslogtreecommitdiffstats
path: root/meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest
diff options
context:
space:
mode:
Diffstat (limited to 'meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest')
-rw-r--r--meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest43
1 files changed, 31 insertions, 12 deletions
diff --git a/meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest b/meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest
index 29ec0d1027..eae172116f 100644
--- a/meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest
+++ b/meta-oe/recipes-support/libgpiod/libgpiod-2.x/run-ptest
@@ -1,24 +1,43 @@
1#!/bin/sh 1#!/bin/sh
2 2
3testbins="gpiod-test gpio-tools-test.bash gpiod-cxx-test"
4
5ptestdir=$(dirname "$(readlink -f "$0")") 3ptestdir=$(dirname "$(readlink -f "$0")")
6cd $ptestdir/tests 4cd $ptestdir/tests
7 5
6export GPIODBUS_TEST_DAEMON_PATH="$ptestdir/tests/gpio-manager"
7export PATH="$ptestdir/tests/:$PATH"
8
8# libgpiod v2 uses gpio-sim - a configfs-based testing module. We need to 9# libgpiod v2 uses gpio-sim - a configfs-based testing module. We need to
9# make sure configfs is mounted before running any tests. 10# make sure configfs is mounted before running any tests.
10modprobe configfs 11modprobe configfs
11mountpoint /sys/kernel/config > /dev/null || mount -t configfs configfs /sys/kernel/config 12mountpoint /sys/kernel/config > /dev/null || mount -t configfs configfs /sys/kernel/config
12 13
13for testbin in $testbins; do 14# Make sure the daemon is not running during tests.
14 if test -e ./$testbin; then 15systemctl stop gpio-manager 2> /dev/null > /dev/null
15 ./$testbin > ./$testbin.out 2>&1 16service gpio-manager stop 2> /dev/null > /dev/null
16 if [ $? -ne 0 ]; then 17
17 echo "FAIL: $testbin" 18run_one_test() {
18 else 19 testbin="$1"
19 echo "PASS: $testbin" 20
20 fi 21 ./$testbin > ./$testbin.out 2>&1
22 if [ $? -ne 0 ]; then
23 echo "FAIL: $testbin"
21 else 24 else
22 echo "SKIP: $testbin" 25 echo "PASS: $testbin"
23 fi 26 fi
24done 27}
28
29run_one_test gpiod-test
30run_one_test gpio-tools-test.bash
31run_one_test gpiod-cxx-test
32run_one_test gpiod-glib-test
33
34# Wait for the leftover uevents to be emitted before running DBus tests.
35udevadm settle
36run_one_test gpiodbus-test
37
38udevadm settle
39gpio-manager 2> /dev/null > /dev/null &
40GPIO_MANAGER_PID=$!
41run_one_test gpiocli-test.bash
42kill $GPIO_MANAGER_PID
43wait $GPIO_MANAGER_PID