From ad3eeaedc5a9042682f236f43dd939b2e620d07c Mon Sep 17 00:00:00 2001 From: Jakob Unterwurzacher Date: Sat, 26 Jun 2021 19:12:52 +0200 Subject: tests, maxlen.bash: speed up TestMaxlen using QUICK=1 From >6 to <1 second. --- contrib/maxlen.bash | 37 ++++++++++++++++++++++++------------- 1 file changed, 24 insertions(+), 13 deletions(-) (limited to 'contrib') diff --git a/contrib/maxlen.bash b/contrib/maxlen.bash index 14d40da..99ffb1f 100755 --- a/contrib/maxlen.bash +++ b/contrib/maxlen.bash @@ -32,25 +32,36 @@ while true ; do echo "error: file $PWD/$NEXT already exists" exit 1 fi - touch $NEXT 2> /dev/null || break + echo -n 2> /dev/null > $NEXT || break rm $NEXT NAME="$NEXT" done echo "${#NAME}" -echo -n " Maximum dirname length: " -# Add one character at a time until we hit an error -NAME="" -while true ; do - NEXT="${NAME}x" - mkdir $NEXT 2> /dev/null || break - rmdir $NEXT - NAME="$NEXT" -done -MAX_DIRNAME=${#NAME} -echo "${#NAME}" +# Set to 0 if undefined +: ${QUICK:=0} + +if [[ $QUICK -ne 1 ]]; then + echo -n " Maximum dirname length: " + # Add one character at a time until we hit an error + NAME="" + while true ; do + NEXT="${NAME}x" + mkdir $NEXT 2> /dev/null || break + rmdir $NEXT + NAME="$NEXT" + done + MAX_DIRNAME=${#NAME} + echo "${#NAME}" +fi + +if [[ $QUICK -eq 1 ]]; then + CHARS_TODO=100 +else + CHARS_TODO="1 10 100 $MAX_DIRNAME" +fi -for CHARS_PER_SUBDIR in 1 10 100 $MAX_DIRNAME ; do +for CHARS_PER_SUBDIR in $CHARS_TODO ; do echo -n " Maximum path length with $(printf %3d $CHARS_PER_SUBDIR) chars per subdir: " if [[ $INTERACTIVE -eq 1 ]] ; then echo -n " " -- cgit v1.2.3