[LTP] [PATCH 1/1] lib: Add test for tst_check_driver()
Petr Vorel
pvorel@suse.cz
Mon Jan 25 10:58:14 CET 2021
Test for 8f7013ba6.
Signed-off-by: Petr Vorel <pvorel@suse.cz>
---
lib/newlib_tests/shell/tst_check_driver.sh | 64 ++++++++++++++++++++++
1 file changed, 64 insertions(+)
create mode 100755 lib/newlib_tests/shell/tst_check_driver.sh
diff --git a/lib/newlib_tests/shell/tst_check_driver.sh b/lib/newlib_tests/shell/tst_check_driver.sh
new file mode 100755
index 000000000..1d438700b
--- /dev/null
+++ b/lib/newlib_tests/shell/tst_check_driver.sh
@@ -0,0 +1,64 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright (c) 2021 Petr Vorel <pvorel@suse.cz>
+
+TST_TESTFUNC=test
+TST_SETUP=setup
+TST_CNT=3
+TST_NEEDS_CMDS="tst_check_drivers find grep head sed"
+. tst_test.sh
+
+MODULES_DIR="${MODULES_DIR:-/lib/modules/$(uname -r)}"
+
+setup()
+{
+ tst_res TINFO "using modules directory '$MODULES_DIR'"
+
+ [ -d "$MODULES_DIR" ] || \
+ tst_brk TCONF "modules directory '$MODULES_DIR' missing"
+}
+
+get_name()
+{
+ local path="$1"
+ local drv
+
+ echo $path | sed 's/.*\/\([^/]\+\)\.ko.*/\1/'
+}
+
+test1()
+{
+ local drv
+
+ for drv in $(find $MODULES_DIR | grep -E '_[^/]+\.ko' | head -3); do
+ drv="$(get_name $drv)"
+ EXPECT_PASS tst_check_drivers $drv
+
+ drv="$(echo $drv | sed 's/_/-/g')"
+ EXPECT_PASS tst_check_drivers $drv
+ done
+}
+
+test2()
+{
+ tst_res TINFO "check non-existing module detection"
+ EXPECT_FAIL tst_check_drivers not-existing-kernel-module
+}
+
+test3()
+{
+ local f="$MODULES_DIR/modules.builtin"
+ local drv
+
+ tst_res TINFO "check built-in module detection"
+
+ [ -f "$f" ] || \
+ tst_brk TCONF "missing '$f'"
+
+ for drv in $(head -3 $f); do
+ drv="$(get_name $drv)"
+ EXPECT_PASS tst_check_drivers "$(get_name $drv)"
+ done
+}
+
+tst_run
--
2.30.0
More information about the ltp
mailing list