From: NeilBrown Date: Tue, 15 Aug 2023 12:02:37 +0000 (+1000) Subject: tests: add a faster version of refresh. X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=023b73b38351a5d5b24c40354e904cd75f98c571;p=edlib.git tests: add a faster version of refresh. Doing it "fast" often works, so allow that as an option. Signed-off-by: NeilBrown --- diff --git a/tests b/tests index 61259a0d..023d839a 100755 --- a/tests +++ b/tests @@ -188,17 +188,34 @@ refresh_one() { rm -f tests.d/.in } -refresh_tests() { - if [ $# -gt 1 ]; then - echo >&2 "$0: please provide at most one test to refresh" - exit 1 +refresh_one_fast() { + b=$1 + f=tests.d/$b + if [ ! -f "$f" ]; then + echo >&2 "Cannot find test $f" + return fi - if [ $# -eq 0 ]; then + setup_test_dir + runtest run tests.d/.out "tests.d/$1" + mv tests.d/.out tests.d/"$1" +} + +refresh_tests() { + case "$#:$1:$2" in + 1:-f:* ) tst=""; cmd=refresh_one_fast ;; + 1:* ) tst=$1; cmd=refresh_one ;; + 2:*:-f ) tst=$1; cmd=refresh_one_fast ;; + 0: ) tst=""; cmd=refresh_one ;; + * ) + echo >&2 "$0: please provide at most one test to refresh" + exit 1 + esac + if [ -z "$tst" ]; then for f in tests.d/[A-Za-z0-9]*; do - refresh_one ${f#tests.d/} + $cmd ${f#tests.d/} done else - refresh_one "$1" + $cmd "$tst" fi }