Linux Test Project
 help / color / mirror / Atom feed
* [LTP] [PATCH 1/1] lib: Add test for tst_check_driver()
@ 2021-01-25  9:58 Petr Vorel
  2021-01-25 13:17 ` Cyril Hrubis
  0 siblings, 1 reply; 2+ messages in thread
From: Petr Vorel @ 2021-01-25  9:58 UTC (permalink / raw)
  To: ltp

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


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [LTP] [PATCH 1/1] lib: Add test for tst_check_driver()
  2021-01-25  9:58 [LTP] [PATCH 1/1] lib: Add test for tst_check_driver() Petr Vorel
@ 2021-01-25 13:17 ` Cyril Hrubis
  0 siblings, 0 replies; 2+ messages in thread
From: Cyril Hrubis @ 2021-01-25 13:17 UTC (permalink / raw)
  To: ltp

Hi!
Good test.

With a minor fix:

Reviewed-by: Cyril Hrubis <chrubis@suse.cz>

> 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)"
                                                  ^
						  Just $drv?
> +	done
> +}
> +
> +tst_run

-- 
Cyril Hrubis
chrubis@suse.cz

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-01-25 13:17 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-25  9:58 [LTP] [PATCH 1/1] lib: Add test for tst_check_driver() Petr Vorel
2021-01-25 13:17 ` Cyril Hrubis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox