Re: [PATCH 8/9] new: only allow documented test group names

[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]



On Thu, Sep 16, 2021 at 2:43 AM Darrick J. Wong <djwong@xxxxxxxxxx> wrote:
>
> From: Darrick J. Wong <djwong@xxxxxxxxxx>
>
> Now that we require all group names to be listed in doc/group-names.txt,
> we can use that (instead of running mkgroupfile) to check if the group
> name(s) supplied by the user actually exist.  This has the secondary
> effect of being a second nudge towards keeping the description of groups
> up to date.
>
> Signed-off-by: Darrick J. Wong <djwong@xxxxxxxxxx>
> Reviewed-by: Christoph Hellwig <hch@xxxxxx>
Reviewed-by: Amir Goldstein <amir73il@xxxxxxxxx>

> ---
>  new |   24 +++++++++++-------------
>  1 file changed, 11 insertions(+), 13 deletions(-)
>
>
> diff --git a/new b/new
> index 2097a883..6b7dc5d4 100755
> --- a/new
> +++ b/new
> @@ -83,6 +83,14 @@ then
>      exit 1
>  fi
>
> +# Extract group names from the documentation.
> +group_names() {
> +       awk '/^[[:lower:][:digit:]_]/ {
> +               if ($1 != "" && $1 != "Group" && $2 != "Name:" && $1 != "all")
> +                       printf("%s\n", $1);
> +       }' doc/group-names.txt
> +}
> +
>  if [ $# -eq 0 ]
>  then
>
> @@ -93,16 +101,7 @@ then
>         [ -z "$ans" ] && ans=other
>         if [ "X$ans" = "X?" ]
>         then
> -           for d in $SRC_GROUPS; do
> -               (cd "tests/$d/" ; ../../tools/mkgroupfile "$tmpfile")
> -               l=$(sed -n < "$tmpfile" \
> -                   -e 's/#.*//' \
> -                   -e 's/$/ /' \
> -                   -e 's;\(^[0-9][0-9][0-9]\)\(.*$\);\2;p')
> -               grpl="$grpl $l"
> -           done
> -           lst=`for word in $grpl; do echo $word; done | sort| uniq `
> -           echo $lst
> +           echo $(group_names)
>         else
>             # only allow lower cases, spaces, digits and underscore in group
>             inval=`echo $ans | tr -d '[:lower:][:space:][:digit:]_'`
> @@ -120,11 +119,10 @@ then
>  else
>      # expert mode, groups are on the command line
>      #
> -    (cd "$tdir" ; ../../tools/mkgroupfile "$tmpfile")
>      for g in $*
>      do
> -       if ! grep -q "[[:space:]]$g" "$tmpfile"; then
> -           echo "Warning: group \"$g\" not defined in $tdir tests"
> +       if ! grep -q "^$g" doc/group-names.txt; then
> +           echo "Warning: group \"$g\" not defined in documentation"
>         fi
>      done
>      ans="$*"
>



[Index of Archives]     [Linux Filesystems Development]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux