diff options
author | Eryu Guan <eguan@redhat.com> | 2017-07-28 13:24:51 +0800 |
---|---|---|
committer | Eryu Guan <eguan@redhat.com> | 2017-08-03 20:44:04 +0800 |
commit | 9c129c6887eb109d1407a3342209c71997a98984 (patch) | |
tree | 135a335b6dc6369b3a35715656957ffcb494223c /new | |
parent | fed90418a77eb906462ee8410e4adcfd0562732f (diff) |
new: validate groups when creating new test
Allow only lower case letters, digits, spaces and underscore when
adding groups, give prompt if there's any not-allowed characters.
Also remove redundant spaces between groups.
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Eryu Guan <eguan@redhat.com>
Diffstat (limited to 'new')
-rwxr-xr-x | new | 14 |
1 files changed, 12 insertions, 2 deletions
@@ -239,7 +239,7 @@ then while true do - echo -n "Add to group(s) [other] (? for list): " + echo -n "Add to group(s) [other] (separate by space, ? for list): " read ans [ -z "$ans" ] && ans=other if [ "X$ans" = "X?" ] @@ -254,7 +254,17 @@ then lst=`for word in $grpl; do echo $word; done | sort| uniq ` echo $lst else - break + # only allow lower cases, spaces, digits and underscore in group + inval=`echo $ans | tr -d '[:lower:][:space:][:digit:]_'` + if [ "$inval" != "" ]; then + echo "Invalid characters in group(s): $inval" + echo "Only lower cases, digits and underscore are allowed in groups, separated by space" + continue + else + # remove redundant spaces/tabs + ans=`echo "$ans" | sed 's/\s\+/ /g'` + break + fi fi done else |