diff mbox series

selftests: firmware: conform test to TAP

Message ID 20240520163759.1427653-1-usama.anjum@collabora.com (mailing list archive)
State New
Headers show
Series selftests: firmware: conform test to TAP | expand

Commit Message

Muhammad Usama Anjum May 20, 2024, 4:37 p.m. UTC
Conform the layout, informational and status messages to TAP. No
functional change is intended other than the layout of output messages.
Without using TAP messages, the passed/failed/skip test names cannot be
found. This is a prepartory patch, more patches will be sent to comform
the test completely.

Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
---
 .../selftests/firmware/fw_run_tests.sh        | 63 ++++++++++++-------
 1 file changed, 40 insertions(+), 23 deletions(-)

Comments

Muhammad Usama Anjum July 1, 2024, 8:33 a.m. UTC | #1
Adding missing maintainer and reviser.

On 5/20/24 9:37 PM, Muhammad Usama Anjum wrote:
> Conform the layout, informational and status messages to TAP. No
> functional change is intended other than the layout of output messages.
> Without using TAP messages, the passed/failed/skip test names cannot be
> found. This is a prepartory patch, more patches will be sent to comform
> the test completely.
> 
> Signed-off-by: Muhammad Usama Anjum <usama.anjum@collabora.com>
> ---
>  .../selftests/firmware/fw_run_tests.sh        | 63 ++++++++++++-------
>  1 file changed, 40 insertions(+), 23 deletions(-)
> 
> diff --git a/tools/testing/selftests/firmware/fw_run_tests.sh b/tools/testing/selftests/firmware/fw_run_tests.sh
> index f6d95a2d51249..5063c75345680 100755
> --- a/tools/testing/selftests/firmware/fw_run_tests.sh
> +++ b/tools/testing/selftests/firmware/fw_run_tests.sh
> @@ -6,6 +6,9 @@
>  
>  set -e
>  
> +DIR="$(dirname $(readlink -f "$0"))"
> +source "${DIR}"/../kselftest/ktap_helpers.sh
> +
>  TEST_DIR=$(dirname $0)
>  source $TEST_DIR/fw_lib.sh
>  
> @@ -26,54 +29,68 @@ run_tests()
>  	proc_set_force_sysfs_fallback $1
>  	proc_set_ignore_sysfs_fallback $2
>  	$TEST_DIR/fw_upload.sh
> +
> +	ktap_test_pass "Completed"
>  }
>  
>  run_test_config_0001()
>  {
> -	echo "-----------------------------------------------------"
> -	echo "Running kernel configuration test 1 -- rare"
> -	echo "Emulates:"
> -	echo "CONFIG_FW_LOADER=y"
> -	echo "CONFIG_FW_LOADER_USER_HELPER=n"
> -	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
> +	ktap_print_msg "-----------------------------------------------------"
> +	ktap_print_msg "Running kernel configuration test 1 -- rare"
> +	ktap_print_msg "Emulates:"
> +	ktap_print_msg "CONFIG_FW_LOADER=y"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=n"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
>  	run_tests 0 1
>  }
>  
>  run_test_config_0002()
>  {
> -	echo "-----------------------------------------------------"
> -	echo "Running kernel configuration test 2 -- distro"
> -	echo "Emulates:"
> -	echo "CONFIG_FW_LOADER=y"
> -	echo "CONFIG_FW_LOADER_USER_HELPER=y"
> -	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
> +	ktap_print_msg "-----------------------------------------------------"
> +	ktap_print_msg "Running kernel configuration test 2 -- distro"
> +	ktap_print_msg "Emulates:"
> +	ktap_print_msg "CONFIG_FW_LOADER=y"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=y"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
>  	proc_set_ignore_sysfs_fallback 0
>  	run_tests 0 0
>  }
>  
>  run_test_config_0003()
>  {
> -	echo "-----------------------------------------------------"
> -	echo "Running kernel configuration test 3 -- android"
> -	echo "Emulates:"
> -	echo "CONFIG_FW_LOADER=y"
> -	echo "CONFIG_FW_LOADER_USER_HELPER=y"
> -	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y"
> +	ktap_print_msg "-----------------------------------------------------"
> +	ktap_print_msg "Running kernel configuration test 3 -- android"
> +	ktap_print_msg "Emulates:"
> +	ktap_print_msg "CONFIG_FW_LOADER=y"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=y"
> +	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y"
>  	run_tests 1 0
>  }
>  
> +ktap_print_header
> +
>  check_mods
>  check_setup
>  
> -echo "Running namespace test: "
> -$TEST_DIR/fw_namespace $DIR/trigger_request
> -echo "OK"
> -
>  if [ -f $FW_FORCE_SYSFS_FALLBACK ]; then
> +	ktap_set_plan "4"
> +
>  	run_test_config_0001
>  	run_test_config_0002
>  	run_test_config_0003
>  else
> -	echo "Running basic kernel configuration, working with your config"
> +	ktap_set_plan "2"
> +
> +	ktap_print_msg "Running basic kernel configuration, working with your config"
>  	run_tests
>  fi
> +
> +ktap_print_msg "Running namespace test: "
> +$TEST_DIR/fw_namespace $DIR/trigger_request
> +if [ $? -eq 0 ]; then
> +    ktap_test_pass "fw_namespace completed successfully"
> +else
> +    ktap_test_fail "fw_namespace failed"
> +fi
> +
> +ktap_finished
Shuah Khan July 10, 2024, 6:13 p.m. UTC | #2
On 7/1/24 02:33, Muhammad Usama Anjum wrote:
> Adding missing maintainer and reviser.
> 
> On 5/20/24 9:37 PM, Muhammad Usama Anjum wrote:
>> Conform the layout, informational and status messages to TAP. No
>> functional change is intended other than the layout of output messages.
>> Without using TAP messages, the passed/failed/skip test names cannot be
>> found. This is a prepartory patch, more patches will be sent to comform
>> the test completely.

For these kinds of patches, I would like to see the output before and
after and justification on what these changes are necessary since there
are wrappers that add summary tap messages.

Sprinkling ktap messages in tests can make the output hard to read

thanks,
-- Shuah
diff mbox series

Patch

diff --git a/tools/testing/selftests/firmware/fw_run_tests.sh b/tools/testing/selftests/firmware/fw_run_tests.sh
index f6d95a2d51249..5063c75345680 100755
--- a/tools/testing/selftests/firmware/fw_run_tests.sh
+++ b/tools/testing/selftests/firmware/fw_run_tests.sh
@@ -6,6 +6,9 @@ 
 
 set -e
 
+DIR="$(dirname $(readlink -f "$0"))"
+source "${DIR}"/../kselftest/ktap_helpers.sh
+
 TEST_DIR=$(dirname $0)
 source $TEST_DIR/fw_lib.sh
 
@@ -26,54 +29,68 @@  run_tests()
 	proc_set_force_sysfs_fallback $1
 	proc_set_ignore_sysfs_fallback $2
 	$TEST_DIR/fw_upload.sh
+
+	ktap_test_pass "Completed"
 }
 
 run_test_config_0001()
 {
-	echo "-----------------------------------------------------"
-	echo "Running kernel configuration test 1 -- rare"
-	echo "Emulates:"
-	echo "CONFIG_FW_LOADER=y"
-	echo "CONFIG_FW_LOADER_USER_HELPER=n"
-	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
+	ktap_print_msg "-----------------------------------------------------"
+	ktap_print_msg "Running kernel configuration test 1 -- rare"
+	ktap_print_msg "Emulates:"
+	ktap_print_msg "CONFIG_FW_LOADER=y"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=n"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
 	run_tests 0 1
 }
 
 run_test_config_0002()
 {
-	echo "-----------------------------------------------------"
-	echo "Running kernel configuration test 2 -- distro"
-	echo "Emulates:"
-	echo "CONFIG_FW_LOADER=y"
-	echo "CONFIG_FW_LOADER_USER_HELPER=y"
-	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
+	ktap_print_msg "-----------------------------------------------------"
+	ktap_print_msg "Running kernel configuration test 2 -- distro"
+	ktap_print_msg "Emulates:"
+	ktap_print_msg "CONFIG_FW_LOADER=y"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=y"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=n"
 	proc_set_ignore_sysfs_fallback 0
 	run_tests 0 0
 }
 
 run_test_config_0003()
 {
-	echo "-----------------------------------------------------"
-	echo "Running kernel configuration test 3 -- android"
-	echo "Emulates:"
-	echo "CONFIG_FW_LOADER=y"
-	echo "CONFIG_FW_LOADER_USER_HELPER=y"
-	echo "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y"
+	ktap_print_msg "-----------------------------------------------------"
+	ktap_print_msg "Running kernel configuration test 3 -- android"
+	ktap_print_msg "Emulates:"
+	ktap_print_msg "CONFIG_FW_LOADER=y"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER=y"
+	ktap_print_msg "CONFIG_FW_LOADER_USER_HELPER_FALLBACK=y"
 	run_tests 1 0
 }
 
+ktap_print_header
+
 check_mods
 check_setup
 
-echo "Running namespace test: "
-$TEST_DIR/fw_namespace $DIR/trigger_request
-echo "OK"
-
 if [ -f $FW_FORCE_SYSFS_FALLBACK ]; then
+	ktap_set_plan "4"
+
 	run_test_config_0001
 	run_test_config_0002
 	run_test_config_0003
 else
-	echo "Running basic kernel configuration, working with your config"
+	ktap_set_plan "2"
+
+	ktap_print_msg "Running basic kernel configuration, working with your config"
 	run_tests
 fi
+
+ktap_print_msg "Running namespace test: "
+$TEST_DIR/fw_namespace $DIR/trigger_request
+if [ $? -eq 0 ]; then
+    ktap_test_pass "fw_namespace completed successfully"
+else
+    ktap_test_fail "fw_namespace failed"
+fi
+
+ktap_finished