From: Cyril Hrubis <chrubis@suse.cz>
To: ltp@lists.linux.it
Subject: [LTP] [RFC PATCH v3 2/5] tst_test.sh: Introduce TST_NO_DEFAULT_RUN
Date: Wed, 4 Apr 2018 15:08:06 +0200 [thread overview]
Message-ID: <20180404130806.GG32109@rei> (raw)
In-Reply-To: <20180403154717.22491-3-pvorel@suse.cz>
Hi!
> TST_NO_DEFAULT_RUN is somehow similar to TST_NO_DEFAULT_MAIN. It's meant
> to be used for libraries and tools using tst_test.sh. It helps to use
> part of test framework functionality without wanting to run test.
>
> Signed-off-by: Petr Vorel <pvorel@suse.cz>
> ---
> testcases/lib/tst_test.sh | 100 +++++++++++++++++++++++-----------------------
> 1 file changed, 51 insertions(+), 49 deletions(-)
>
> diff --git a/testcases/lib/tst_test.sh b/testcases/lib/tst_test.sh
> index 78bd328a2..7cdaa1f7f 100644
> --- a/testcases/lib/tst_test.sh
> +++ b/testcases/lib/tst_test.sh
> @@ -1,6 +1,6 @@
> #!/bin/sh
> #
> -# Copyright (c) Linux Test Project, 2014-2017
> +# Copyright (c) Linux Test Project, 2014-2018
> #
> # This program is free software; you can redistribute it and/or modify
> # it under the terms of the GNU General Public License as published by
> @@ -371,67 +371,69 @@ tst_run()
> tst_do_exit
> }
>
> -if TST_TEST_PATH=$(which $0) 2>/dev/null; then
> - if ! grep -q tst_run "$TST_TEST_PATH"; then
> - tst_brk TBROK "Test $0 must call tst_run!"
> +if [ -z "$TST_NO_DEFAULT_RUN" ]; then
> + if TST_TEST_PATH=$(which $0) 2>/dev/null; then
> + if ! grep -q tst_run "$TST_TEST_PATH"; then
> + tst_brk TBROK "Test $0 must call tst_run!"
> + fi
> fi
> -fi
> -
> -if [ -z "$TST_ID" ]; then
> - filename=$(basename $0)
> - TST_ID=${filename%%.*}
> -fi
> -export TST_ID="$TST_ID"
> -
> -if [ -z "$TST_TESTFUNC" ]; then
> - tst_brk TBROK "TST_TESTFUNC is not defined"
> -fi
>
> -if [ -n "$TST_CNT" ]; then
> - if ! tst_is_int "$TST_CNT"; then
> - tst_brk TBROK "TST_CNT must be integer"
> + if [ -z "$TST_ID" ]; then
> + filename=$(basename $0)
> + TST_ID=${filename%%.*}
> fi
> + export TST_ID="$TST_ID"
>
> - if [ "$TST_CNT" -le 0 ]; then
> - tst_brk TBROK "TST_CNT must be > 0"
> + if [ -z "$TST_TESTFUNC" ]; then
> + tst_brk TBROK "TST_TESTFUNC is not defined"
> fi
> -fi
>
> -if [ -n "$TST_POS_ARGS" ]; then
> - if ! tst_is_int "$TST_POS_ARGS"; then
> - tst_brk TBROK "TST_POS_ARGS must be integer"
> + if [ -n "$TST_CNT" ]; then
> + if ! tst_is_int "$TST_CNT"; then
> + tst_brk TBROK "TST_CNT must be integer"
> + fi
> +
> + if [ "$TST_CNT" -le 0 ]; then
> + tst_brk TBROK "TST_CNT must be > 0"
> + fi
> fi
>
> - if [ "$TST_POS_ARGS" -le 0 ]; then
> - tst_brk TBROK "TST_POS_ARGS must be > 0"
> + if [ -n "$TST_POS_ARGS" ]; then
> + if ! tst_is_int "$TST_POS_ARGS"; then
> + tst_brk TBROK "TST_POS_ARGS must be integer"
> + fi
> +
> + if [ "$TST_POS_ARGS" -le 0 ]; then
> + tst_brk TBROK "TST_POS_ARGS must be > 0"
> + fi
> fi
> -fi
>
> -if [ -z "$LTPROOT" ]; then
> - export LTPROOT="$PWD"
> - export TST_DATAROOT="$LTPROOT/datafiles"
> -else
> - export TST_DATAROOT="$LTPROOT/testcases/data/$TST_ID"
> -fi
> + if [ -z "$LTPROOT" ]; then
> + export LTPROOT="$PWD"
> + export TST_DATAROOT="$LTPROOT/datafiles"
> + else
> + export TST_DATAROOT="$LTPROOT/testcases/data/$TST_ID"
> + fi
I guess that we may want to initialize the TST_ID, LTPROOT and
TST_DATAROOT regardless, otherwise this looks pretty much
straighforward and okay.
--
Cyril Hrubis
chrubis@suse.cz
next prev parent reply other threads:[~2018-04-04 13:08 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-03 15:47 [LTP] [RFC PATCH v3 0/5] Rewriting network tests into new shell API Petr Vorel
2018-04-03 15:47 ` [LTP] [RFC PATCH v3 1/5] tst_net.sh: Support both old and new shell APIs + rename it Petr Vorel
2018-04-04 13:37 ` Alexey Kodanev
2018-04-03 15:47 ` [LTP] [RFC PATCH v3 2/5] tst_test.sh: Introduce TST_NO_DEFAULT_RUN Petr Vorel
2018-04-04 13:08 ` Cyril Hrubis [this message]
2018-04-04 13:15 ` Petr Vorel
2018-04-03 15:47 ` [LTP] [RFC PATCH v3 3/5] network.sh: Migrate to new shell API Petr Vorel
2018-04-03 15:47 ` [LTP] [RFC PATCH v3 4/5] network/interface: Cleanup if4-addr-change Petr Vorel
2018-04-03 15:47 ` [LTP] [RFC PATCH v3 5/5] net: Migrate test_net_stress.sh and it's dependencies to new shell API Petr Vorel
2018-04-04 13:59 ` Alexey Kodanev
2018-04-04 14:33 ` Petr Vorel
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=20180404130806.GG32109@rei \
--to=chrubis@suse.cz \
--cc=ltp@lists.linux.it \
/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