From: Petr Vorel <pvorel@suse.cz>
To: shatur.linux@gmail.com
Cc: ltp@lists.linux.it, sturlapati@vmware.com
Subject: Re: [LTP] [PATCH] run-posix-option-group-test.sh: Log and exit if one attempts to run tests without compiling
Date: Fri, 10 Jun 2022 07:41:55 +0200 [thread overview]
Message-ID: <YqLZoyKV2Y8VDIya@pevik> (raw)
In-Reply-To: <20220607221816.50955-1-sturlapati@vmware.com>
Hi Sharan,
> From: Sharan Turlapati <sturlapati@vmware.com>
> Currently, run-posix-option-group-test.sh erroneously
> logs "***Tests Completed***" when no test has actually run if the script is invoked
> to run without actually compiling the tests.
> Check if the .run-test files actually exist before attempting to run them.
> If not found, log a message indicating the problem and suggest to check if
> the tests were compiled. Exit the script without attempting to run other
> tests.
Can you please describe how this happen? open POSIX failed to compile?
...
> +++ b/testcases/open_posix_testsuite/bin/run-posix-option-group-test.sh
> @@ -22,9 +22,16 @@ EOF
> run_option_group_tests()
> {
> - for test_script in $(find $1 -name '*.run-test' | sort); do
> - (cd "$(dirname "$test_script")" && ./$(basename "$test_script"))
> - done
> + list_of_tests=`find $1 -name '*.run-test' | sort`
> + if [[ -n $list_of_tests ]]
[[ ]] are bashisms, we require support for POSIX shell (i.e. dash, busybox sh)
TL;DR: simply use:
if [ -n "$list_of_tests" ]; then
NOTE [ ] require using quotes (unlike [[ ]]).
You can check similar error yourself:
$ checkbashisms run-posix-option-group-test.sh
possible bashism in run-posix-option-group-test.sh line 26 (alternative test command ([[ foo ]] should be [ foo ])):
if [[ -n $list_of_tests ]]
All is described in:
https://github.com/linux-test-project/ltp/wiki/Test-Writing-Guidelines#22-shell-coding-style
> + then
> + for test_script in $list_of_tests; do
> + (cd "$(dirname "$test_script")" && ./$(basename "$test_script"))
> + done
> + else
> + echo ".run-test files not found under $1. Were the tests compiled?"
> + exit 1
> + fi
> }
I'd prefer slightly different version:
* check for error first, then for can be out of else (readability)
* add local
run_option_group_tests()
{
local list_of_tests
list_of_tests=`find $1 -name '*.run-test' | sort`
if [ -z "$list_of_tests" ]; then
echo ".run-test files not found under $1. Were the tests compiled?"
exit 1
fi
for test_script in $list_of_tests; do
(cd "$(dirname "$test_script")" && ./$(basename "$test_script"))
done
}
Kind regards,
Petr
--
Mailing list info: https://lists.linux.it/listinfo/ltp
next prev parent reply other threads:[~2022-06-10 5:42 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-06-07 22:18 [LTP] [PATCH] run-posix-option-group-test.sh: Log and exit if one attempts to run tests without compiling shatur.linux
2022-06-10 5:41 ` Petr Vorel [this message]
2022-06-13 13:46 ` Petr Vorel
-- strict thread matches above, loose matches on Subject: below --
2022-06-07 22:08 shatur.linux
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=YqLZoyKV2Y8VDIya@pevik \
--to=pvorel@suse.cz \
--cc=ltp@lists.linux.it \
--cc=shatur.linux@gmail.com \
--cc=sturlapati@vmware.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox