Message ID | 162317280590.653489.10114638028601363399.stgit@locust (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | fstests: move test group lists into test files | expand |
On 08 Jun 2021 at 22:50, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@kernel.org> > > Convert the nextid script to use the automatic group file generation to > figure out the next available test id. Looks good to me. Reviewed-by: Chandan Babu R <chandanrlinux@gmail.com> > > Signed-off-by: Darrick J. Wong <djwong@kernel.org> > --- > tools/nextid | 1 - > tools/nextid | 39 +++++++++++++++++++++++++++++++++++++++ > 2 files changed, 39 insertions(+), 1 deletion(-) > delete mode 120000 tools/nextid > create mode 100755 tools/nextid > > > diff --git a/tools/nextid b/tools/nextid > deleted file mode 120000 > index 5c31d602..00000000 > --- a/tools/nextid > +++ /dev/null > @@ -1 +0,0 @@ > -sort-group > \ No newline at end of file > diff --git a/tools/nextid b/tools/nextid > new file mode 100755 > index 00000000..a65348e8 > --- /dev/null > +++ b/tools/nextid > @@ -0,0 +1,39 @@ > +#!/bin/bash > + > +# Compute the next available test id in a given test directory. > + > +if [ -z "$1" ] || [ "$1" = "--help" ] || [ -n "$2" ] || [ ! -d "tests/$1/" ]; then > + echo "Usage: $0 test_dir" > + exit 1 > +fi > + > +. ./common/test_names > + > +line=0 > +i=0 > +eof=1 > + > +while read found other_junk; > +do > + line=$((line+1)) > + if [ -z "$found" ] || [ "$found" == "#" ]; then > + continue > + elif ! echo "$found" | grep -q "^$VALID_TEST_NAME$"; then > + # this one is for tests not named by a number > + continue > + fi > + i=$((i+1)) > + id=`printf "%03d" $i` > + if [ "$id" != "$found" ]; then > + eof=0 > + break > + fi > +done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | tr - ' ') > + > +if [ $eof -eq 1 ]; then > + line=$((line+1)) > + i=$((i+1)) > + id=`printf "%03d" $i` > +fi > + > +echo "$1/$id"
On Tue, Jun 08, 2021 at 10:20:05AM -0700, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@kernel.org> > > Convert the nextid script to use the automatic group file generation to > figure out the next available test id. > > Signed-off-by: Darrick J. Wong <djwong@kernel.org> > --- > tools/nextid | 1 - > tools/nextid | 39 +++++++++++++++++++++++++++++++++++++++ > 2 files changed, 39 insertions(+), 1 deletion(-) > delete mode 120000 tools/nextid > create mode 100755 tools/nextid > > > diff --git a/tools/nextid b/tools/nextid > deleted file mode 120000 > index 5c31d602..00000000 > --- a/tools/nextid > +++ /dev/null > @@ -1 +0,0 @@ > -sort-group > \ No newline at end of file > diff --git a/tools/nextid b/tools/nextid > new file mode 100755 > index 00000000..a65348e8 > --- /dev/null > +++ b/tools/nextid > @@ -0,0 +1,39 @@ > +#!/bin/bash > + > +# Compute the next available test id in a given test directory. > + > +if [ -z "$1" ] || [ "$1" = "--help" ] || [ -n "$2" ] || [ ! -d "tests/$1/" ]; then > + echo "Usage: $0 test_dir" > + exit 1 > +fi [ $# != 1 ] would be simpler than [ -z "$1" ] || [ -n "$2" ]. > +line=0 The 'line' variable isn't needed. > +i=0 > +eof=1 > + > +while read found other_junk; > +do > + line=$((line+1)) > + if [ -z "$found" ] || [ "$found" == "#" ]; then > + continue > + elif ! echo "$found" | grep -q "^$VALID_TEST_NAME$"; then > + # this one is for tests not named by a number > + continue > + fi > + i=$((i+1)) > + id=`printf "%03d" $i` > + if [ "$id" != "$found" ]; then > + eof=0 > + break > + fi > +done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | tr - ' ') The first token matching $VALID_TEST_NAME already implies that it is non-empty and not "#". Also, this could be handled by piping to grep: while read found other_junk; do i=$((i+1)) id=`printf "%03d" $i` if [ "$id" != "$found" ]; then eof=0 break fi done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | \ grep "^$VALID_TEST_NAME\>" | tr - ' ') - Eric
On Fri, Jun 11, 2021 at 04:46:27PM -0700, Eric Biggers wrote: > On Tue, Jun 08, 2021 at 10:20:05AM -0700, Darrick J. Wong wrote: > > From: Darrick J. Wong <djwong@kernel.org> > > > > Convert the nextid script to use the automatic group file generation to > > figure out the next available test id. > > > > Signed-off-by: Darrick J. Wong <djwong@kernel.org> > > --- > > tools/nextid | 1 - > > tools/nextid | 39 +++++++++++++++++++++++++++++++++++++++ > > 2 files changed, 39 insertions(+), 1 deletion(-) > > delete mode 120000 tools/nextid > > create mode 100755 tools/nextid > > > > > > diff --git a/tools/nextid b/tools/nextid > > deleted file mode 120000 > > index 5c31d602..00000000 > > --- a/tools/nextid > > +++ /dev/null > > @@ -1 +0,0 @@ > > -sort-group > > \ No newline at end of file > > diff --git a/tools/nextid b/tools/nextid > > new file mode 100755 > > index 00000000..a65348e8 > > --- /dev/null > > +++ b/tools/nextid > > @@ -0,0 +1,39 @@ > > +#!/bin/bash > > + > > +# Compute the next available test id in a given test directory. > > + > > +if [ -z "$1" ] || [ "$1" = "--help" ] || [ -n "$2" ] || [ ! -d "tests/$1/" ]; then > > + echo "Usage: $0 test_dir" > > + exit 1 > > +fi > > [ $# != 1 ] would be simpler than [ -z "$1" ] || [ -n "$2" ]. > > > +line=0 > > The 'line' variable isn't needed. Both fixed. > > > +i=0 > > +eof=1 > > + > > +while read found other_junk; > > +do > > + line=$((line+1)) > > + if [ -z "$found" ] || [ "$found" == "#" ]; then > > + continue > > + elif ! echo "$found" | grep -q "^$VALID_TEST_NAME$"; then > > + # this one is for tests not named by a number > > + continue > > + fi > > + i=$((i+1)) > > + id=`printf "%03d" $i` > > + if [ "$id" != "$found" ]; then > > + eof=0 > > + break > > + fi > > +done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | tr - ' ') > > The first token matching $VALID_TEST_NAME already implies that it is non-empty > and not "#". Also, this could be handled by piping to grep: > > while read found other_junk; do > i=$((i+1)) > id=`printf "%03d" $i` > if [ "$id" != "$found" ]; then > eof=0 > break > fi > done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | \ > grep "^$VALID_TEST_NAME\>" | tr - ' ') I'm glad your regexfu is higher than mine. Thanks for the suggestions! --D > > - Eric
On 6/8/21 10:20 AM, Darrick J. Wong wrote: > From: Darrick J. Wong <djwong@kernel.org> > > Convert the nextid script to use the automatic group file generation to > figure out the next available test id. > > Signed-off-by: Darrick J. Wong <djwong@kernel.org> With other review nits addressed Reviewed-by: Allison Henderson <allison.henderson@oracle.com> > --- > tools/nextid | 1 - > tools/nextid | 39 +++++++++++++++++++++++++++++++++++++++ > 2 files changed, 39 insertions(+), 1 deletion(-) > delete mode 120000 tools/nextid > create mode 100755 tools/nextid > > > diff --git a/tools/nextid b/tools/nextid > deleted file mode 120000 > index 5c31d602..00000000 > --- a/tools/nextid > +++ /dev/null > @@ -1 +0,0 @@ > -sort-group > \ No newline at end of file > diff --git a/tools/nextid b/tools/nextid > new file mode 100755 > index 00000000..a65348e8 > --- /dev/null > +++ b/tools/nextid > @@ -0,0 +1,39 @@ > +#!/bin/bash > + > +# Compute the next available test id in a given test directory. > + > +if [ -z "$1" ] || [ "$1" = "--help" ] || [ -n "$2" ] || [ ! -d "tests/$1/" ]; then > + echo "Usage: $0 test_dir" > + exit 1 > +fi > + > +. ./common/test_names > + > +line=0 > +i=0 > +eof=1 > + > +while read found other_junk; > +do > + line=$((line+1)) > + if [ -z "$found" ] || [ "$found" == "#" ]; then > + continue > + elif ! echo "$found" | grep -q "^$VALID_TEST_NAME$"; then > + # this one is for tests not named by a number > + continue > + fi > + i=$((i+1)) > + id=`printf "%03d" $i` > + if [ "$id" != "$found" ]; then > + eof=0 > + break > + fi > +done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | tr - ' ') > + > +if [ $eof -eq 1 ]; then > + line=$((line+1)) > + i=$((i+1)) > + id=`printf "%03d" $i` > +fi > + > +echo "$1/$id" >
diff --git a/tools/nextid b/tools/nextid deleted file mode 120000 index 5c31d602..00000000 --- a/tools/nextid +++ /dev/null @@ -1 +0,0 @@ -sort-group \ No newline at end of file diff --git a/tools/nextid b/tools/nextid new file mode 100755 index 00000000..a65348e8 --- /dev/null +++ b/tools/nextid @@ -0,0 +1,39 @@ +#!/bin/bash + +# Compute the next available test id in a given test directory. + +if [ -z "$1" ] || [ "$1" = "--help" ] || [ -n "$2" ] || [ ! -d "tests/$1/" ]; then + echo "Usage: $0 test_dir" + exit 1 +fi + +. ./common/test_names + +line=0 +i=0 +eof=1 + +while read found other_junk; +do + line=$((line+1)) + if [ -z "$found" ] || [ "$found" == "#" ]; then + continue + elif ! echo "$found" | grep -q "^$VALID_TEST_NAME$"; then + # this one is for tests not named by a number + continue + fi + i=$((i+1)) + id=`printf "%03d" $i` + if [ "$id" != "$found" ]; then + eof=0 + break + fi +done < <(cd "tests/$1/" ; ../../tools/mkgroupfile | tr - ' ') + +if [ $eof -eq 1 ]; then + line=$((line+1)) + i=$((i+1)) + id=`printf "%03d" $i` +fi + +echo "$1/$id"