* [PATCH 1/2] check: factor out get_sub_group_list() helper
@ 2017-01-02 13:22 Amir Goldstein
2017-01-02 13:22 ` [PATCH 2/2] check: support include/exclude of sub groups Amir Goldstein
0 siblings, 1 reply; 5+ messages in thread
From: Amir Goldstein @ 2017-01-02 13:22 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
This helper gets a list of tests that belong to a group
under a specific tests subdir.
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---
check | 23 +++++++++++++++++------
1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/check b/check
index cf6379b..faf6281 100755
--- a/check
+++ b/check
@@ -87,19 +87,30 @@ testlist options
exit 0
}
+get_sub_group_list()
+{
+ local d=$1
+ local grp=$2
+
+ test -s "$SRC_DIR/$d/group" || return 1
+
+ local grpl=$(sed -n < $SRC_DIR/$d/group \
+ -e 's/#.*//' \
+ -e 's/$/ /' \
+ -e "s;^\($VALID_TEST_NAME\).* $grp .*;$SRC_DIR/$d/\1;p")
+ echo $grpl
+}
+
get_group_list()
{
- grp=$1
+ local grp=$1
+ local grpl=""
for d in $SRC_GROUPS $FSTYP; do
if ! test -d "$SRC_DIR/$d" ; then
continue
fi
- l=$(sed -n < $SRC_DIR/$d/group \
- -e 's/#.*//' \
- -e 's/$/ /' \
- -e "s;^\($VALID_TEST_NAME\).* $grp .*;$SRC_DIR/$d/\1;p")
- grpl="$grpl $l"
+ grpl="$grpl $(get_sub_group_list $d $grp)"
done
echo $grpl
}
--
2.7.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH 2/2] check: support include/exclude of sub groups
2017-01-02 13:22 [PATCH 1/2] check: factor out get_sub_group_list() helper Amir Goldstein
@ 2017-01-02 13:22 ` Amir Goldstein
2017-01-03 5:06 ` Eryu Guan
2017-01-03 9:15 ` [PATCH 3/3] check: document tests include/exclude options Amir Goldstein
0 siblings, 2 replies; 5+ messages in thread
From: Amir Goldstein @ 2017-01-02 13:22 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
Allow including and/or excluding tests by test dir and group.
-g and -x command line arguments can take the form of
<subdir>/<group>.
For example:
./check -n -g xfs/quick
./check -n -g stress -x xfs/stress
./check -n -g xfs/punch -x dangerous_fuzzers
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---
check | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/check b/check
index faf6281..8d1ec71 100755
--- a/check
+++ b/check
@@ -105,6 +105,14 @@ get_group_list()
{
local grp=$1
local grpl=""
+ local sub=$(dirname $grp)
+
+ if [ -n "$sub" -a "$sub" != "." -a -d "$SRC_DIR/$sub" ]; then
+ # group is given as <subdir>/<group> (e.g. xfs/quick)
+ grp=$(basename $grp)
+ get_sub_group_list $sub $grp
+ return
+ fi
for d in $SRC_GROUPS $FSTYP; do
if ! test -d "$SRC_DIR/$d" ; then
--
2.7.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] check: support include/exclude of sub groups
2017-01-02 13:22 ` [PATCH 2/2] check: support include/exclude of sub groups Amir Goldstein
@ 2017-01-03 5:06 ` Eryu Guan
2017-01-03 9:10 ` Amir Goldstein
2017-01-03 9:15 ` [PATCH 3/3] check: document tests include/exclude options Amir Goldstein
1 sibling, 1 reply; 5+ messages in thread
From: Eryu Guan @ 2017-01-03 5:06 UTC (permalink / raw)
To: Amir Goldstein; +Cc: fstests
On Mon, Jan 02, 2017 at 03:22:59PM +0200, Amir Goldstein wrote:
> Allow including and/or excluding tests by test dir and group.
> -g and -x command line arguments can take the form of
> <subdir>/<group>.
>
> For example:
>
> ./check -n -g xfs/quick
> ./check -n -g stress -x xfs/stress
> ./check -n -g xfs/punch -x dangerous_fuzzers
>
> Signed-off-by: Amir Goldstein <amir73il@gmail.com>
This looks handy to me! Mention this usage in usage() function too?
Thanks,
Eryu
> ---
> check | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff --git a/check b/check
> index faf6281..8d1ec71 100755
> --- a/check
> +++ b/check
> @@ -105,6 +105,14 @@ get_group_list()
> {
> local grp=$1
> local grpl=""
> + local sub=$(dirname $grp)
> +
> + if [ -n "$sub" -a "$sub" != "." -a -d "$SRC_DIR/$sub" ]; then
> + # group is given as <subdir>/<group> (e.g. xfs/quick)
> + grp=$(basename $grp)
> + get_sub_group_list $sub $grp
> + return
> + fi
>
> for d in $SRC_GROUPS $FSTYP; do
> if ! test -d "$SRC_DIR/$d" ; then
> --
> 2.7.4
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH 2/2] check: support include/exclude of sub groups
2017-01-03 5:06 ` Eryu Guan
@ 2017-01-03 9:10 ` Amir Goldstein
0 siblings, 0 replies; 5+ messages in thread
From: Amir Goldstein @ 2017-01-03 9:10 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
On Tue, Jan 3, 2017 at 7:06 AM, Eryu Guan <eguan@redhat.com> wrote:
> On Mon, Jan 02, 2017 at 03:22:59PM +0200, Amir Goldstein wrote:
>> Allow including and/or excluding tests by test dir and group.
>> -g and -x command line arguments can take the form of
>> <subdir>/<group>.
>>
>> For example:
>>
>> ./check -n -g xfs/quick
>> ./check -n -g stress -x xfs/stress
>> ./check -n -g xfs/punch -x dangerous_fuzzers
>>
>> Signed-off-by: Amir Goldstein <amir73il@gmail.com>
>
> This looks handy to me! Mention this usage in usage() function too?
>
usage() is so far behind and cryptic (what is the difference between -E and -X?)
I will send a separate patch to address these and the new subgroup as well.
> Thanks,
> Eryu
>
>> ---
>> check | 8 ++++++++
>> 1 file changed, 8 insertions(+)
>>
>> diff --git a/check b/check
>> index faf6281..8d1ec71 100755
>> --- a/check
>> +++ b/check
>> @@ -105,6 +105,14 @@ get_group_list()
>> {
>> local grp=$1
>> local grpl=""
>> + local sub=$(dirname $grp)
>> +
>> + if [ -n "$sub" -a "$sub" != "." -a -d "$SRC_DIR/$sub" ]; then
>> + # group is given as <subdir>/<group> (e.g. xfs/quick)
>> + grp=$(basename $grp)
>> + get_sub_group_list $sub $grp
>> + return
>> + fi
>>
>> for d in $SRC_GROUPS $FSTYP; do
>> if ! test -d "$SRC_DIR/$d" ; then
>> --
>> 2.7.4
>>
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH 3/3] check: document tests include/exclude options
2017-01-02 13:22 ` [PATCH 2/2] check: support include/exclude of sub groups Amir Goldstein
2017-01-03 5:06 ` Eryu Guan
@ 2017-01-03 9:15 ` Amir Goldstein
1 sibling, 0 replies; 5+ messages in thread
From: Amir Goldstein @ 2017-01-03 9:15 UTC (permalink / raw)
To: Eryu Guan; +Cc: fstests
Add argument description and examples to usage() for the
various tests include and exclude options.
Signed-off-by: Amir Goldstein <amir73il@gmail.com>
---
check | 29 ++++++++++++++++++++++++++++-
1 file changed, 28 insertions(+), 1 deletion(-)
diff --git a/check b/check
index 8d1ec71..5a93c94 100755
--- a/check
+++ b/check
@@ -80,9 +80,36 @@ check options
testlist options
-g group[,group...] include tests from these groups
-x group[,group...] exclude tests from these groups
- -X file exclude individual tests
+ -X exclude_file exclude individual tests
-E external_file exclude individual tests
[testlist] include tests matching names in testlist
+
+testlist argument is a list of tests in the form of <test dir>/<test name>.
+
+<test dir> is a directory under tests that contains a group file,
+with a list of the names of the tests in that directory.
+
+<test name> may be either a specific test file name (e.g. xfs/001) or
+a test file name match pattern (e.g. xfs/*).
+
+group argument is either a name of a tests group to collect from all
+the test dirs (e.g. quick) or a name of a tests group to collect from
+a specific tests dir in the form of <test dir>/<group name> (e.g. xfs/quick).
+
+exclude_file argument refers to a name of a file inside each test directory.
+for every test dir where this file is found, the listed test names are
+excluded from the list of tests to run from that test dir.
+
+external_file argument is a path to a single file containing a list of tests
+to exclude in the form of <test dir>/<test name>.
+
+examples:
+ check xfs/001
+ check -g quick
+ check -g xfs/quick
+ check -x stress xfs/*
+ check -X .exclude -g auto
+ check -E ~/.xfstests.exclude
'
exit 0
}
--
2.7.4
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2017-01-03 9:15 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-02 13:22 [PATCH 1/2] check: factor out get_sub_group_list() helper Amir Goldstein
2017-01-02 13:22 ` [PATCH 2/2] check: support include/exclude of sub groups Amir Goldstein
2017-01-03 5:06 ` Eryu Guan
2017-01-03 9:10 ` Amir Goldstein
2017-01-03 9:15 ` [PATCH 3/3] check: document tests include/exclude options Amir Goldstein
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.