* [PATCH nft 1/1] tests/shell: accept name of dump files in place of test names
@ 2023-11-22 18:22 Thomas Haller
2023-11-23 10:48 ` Pablo Neira Ayuso
0 siblings, 1 reply; 3+ messages in thread
From: Thomas Haller @ 2023-11-22 18:22 UTC (permalink / raw)
To: NetFilter; +Cc: Thomas Haller
Imagine you have the filename of a dump file at hand. For example, because
it shows up in `git status` and you can copy it from the terminal.
If you want to run the corresponding test, that was cumbersome. It
involved editing the command line (removing the /dumps/ directory and
the file suffix).
Instead, let "run-tests.sh" do that automatically. There is little value
in bothering the user with a failure:
Before:
$ ./tests/shell/run-tests.sh tests/shell/testcases/optionals/dumps/comments_table_0.json-nft -L
E: Unknown test "tests/shell/testcases/optionals/dumps/comments_table_0.json-nft"
After:
$ ./tests/shell/run-tests.sh tests/shell/testcases/optionals/dumps/comments_table_0.json-nft -L
tests/shell/testcases/optionals/comments_table_0
Signed-off-by: Thomas Haller <thaller@redhat.com>
---
tests/shell/run-tests.sh | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/tests/shell/run-tests.sh b/tests/shell/run-tests.sh
index 3cde97b7ea17..c26142b7ff17 100755
--- a/tests/shell/run-tests.sh
+++ b/tests/shell/run-tests.sh
@@ -431,6 +431,19 @@ for t in "${TESTSOLD[@]}" ; do
elif [ -d "$t" ] ; then
TESTS+=( $(find_tests "$t") )
else
+ if [ -f "$t" ] ; then
+ # If the test name looks like a dumps file, autodetect
+ # the correct test name. It's not useful to bother the
+ # user with a failure in this case.
+ rx="^(.*/)?dumps/([^/]+)\\.(nodump|nft|json-nft)$"
+ if [[ "$t" =~ $rx ]] ; then
+ t2="${BASH_REMATCH[1]}${BASH_REMATCH[2]}"
+ if [ -f "$t2" -a -x "$t2" ] ; then
+ TESTS+=( "$t2" )
+ continue
+ fi
+ fi
+ fi
msg_error "Unknown test \"$t\""
fi
done
--
2.42.0
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [PATCH nft 1/1] tests/shell: accept name of dump files in place of test names
2023-11-22 18:22 [PATCH nft 1/1] tests/shell: accept name of dump files in place of test names Thomas Haller
@ 2023-11-23 10:48 ` Pablo Neira Ayuso
2023-11-23 13:07 ` Thomas Haller
0 siblings, 1 reply; 3+ messages in thread
From: Pablo Neira Ayuso @ 2023-11-23 10:48 UTC (permalink / raw)
To: Thomas Haller; +Cc: NetFilter
On Wed, Nov 22, 2023 at 07:22:25PM +0100, Thomas Haller wrote:
> diff --git a/tests/shell/run-tests.sh b/tests/shell/run-tests.sh
> index 3cde97b7ea17..c26142b7ff17 100755
> --- a/tests/shell/run-tests.sh
> +++ b/tests/shell/run-tests.sh
> @@ -431,6 +431,19 @@ for t in "${TESTSOLD[@]}" ; do
> elif [ -d "$t" ] ; then
> TESTS+=( $(find_tests "$t") )
> else
> + if [ -f "$t" ] ; then
> + # If the test name looks like a dumps file, autodetect
> + # the correct test name. It's not useful to bother the
> + # user with a failure in this case.
> + rx="^(.*/)?dumps/([^/]+)\\.(nodump|nft|json-nft)$"
> + if [[ "$t" =~ $rx ]] ; then
> + t2="${BASH_REMATCH[1]}${BASH_REMATCH[2]}"
> + if [ -f "$t2" -a -x "$t2" ] ; then
> + TESTS+=( "$t2" )
> + continue
> + fi
> + fi
> + fi
I think it is not worth, users of this infrastructure is very small.
So let's keep back this usability feature for tests/shell.
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH nft 1/1] tests/shell: accept name of dump files in place of test names
2023-11-23 10:48 ` Pablo Neira Ayuso
@ 2023-11-23 13:07 ` Thomas Haller
0 siblings, 0 replies; 3+ messages in thread
From: Thomas Haller @ 2023-11-23 13:07 UTC (permalink / raw)
To: Pablo Neira Ayuso; +Cc: NetFilter
On Thu, 2023-11-23 at 11:48 +0100, Pablo Neira Ayuso wrote:
> On Wed, Nov 22, 2023 at 07:22:25PM +0100, Thomas Haller wrote:
> > diff --git a/tests/shell/run-tests.sh b/tests/shell/run-tests.sh
> > index 3cde97b7ea17..c26142b7ff17 100755
> > --- a/tests/shell/run-tests.sh
> > +++ b/tests/shell/run-tests.sh
> > @@ -431,6 +431,19 @@ for t in "${TESTSOLD[@]}" ; do
> > elif [ -d "$t" ] ; then
> > TESTS+=( $(find_tests "$t") )
> > else
> > + if [ -f "$t" ] ; then
> > + # If the test name looks like a dumps
> > file, autodetect
> > + # the correct test name. It's not useful
> > to bother the
> > + # user with a failure in this case.
> > + rx="^(.*/)?dumps/([^/]+)\\.(nodump|nft|jso
> > n-nft)$"
> > + if [[ "$t" =~ $rx ]] ; then
> > + t2="${BASH_REMATCH[1]}${BASH_REMAT
> > CH[2]}"
> > + if [ -f "$t2" -a -x "$t2" ] ; then
> > + TESTS+=( "$t2" )
> > + continue
> > + fi
> > + fi
> > + fi
>
> I think it is not worth, users of this infrastructure is very small.
>
> So let's keep back this usability feature for tests/shell.
OK. Fine.
But while closing and dropping it, let me still make the use case
clear.
When I look at a patch in `git-log` and see for example the diff-stat:
src/json.c | 25 +++++++++++++------------
src/parser_json.c | 91 +++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------
tests/shell/testcases/chains/dumps/0021prio_0.json-nft | Bin 61509 -> 61639 bytes
tests/shell/testcases/chains/dumps/0042chain_variable_0.json-nft | Bin 952 -> 1046 bytes
tests/shell/testcases/chains/dumps/0043chain_ingress_0.json-nft | Bin 619 -> 632 bytes
I'd like to re-run those tests. I'd like to do that by copy-pasting the
file names at hand into the terminal.
Thomas
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-11-23 13:07 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-22 18:22 [PATCH nft 1/1] tests/shell: accept name of dump files in place of test names Thomas Haller
2023-11-23 10:48 ` Pablo Neira Ayuso
2023-11-23 13:07 ` Thomas Haller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).