X-Git-Url: https://git.cameronkatri.com/cgit.git/blobdiff_plain/e0572c39f78b4f88c706a49a60e211302b8e015c..961893b5478e7676b1a422185fcac41f89434b0a:/tests/setup.sh diff --git a/tests/setup.sh b/tests/setup.sh index 51d5a75..b21908d 100755 --- a/tests/setup.sh +++ b/tests/setup.sh @@ -15,22 +15,32 @@ # run_test 'repo index' 'cgit_url "/" | tidy -e' # run_test 'repo summary' 'cgit_url "/foo" | tidy -e' +unset CDPATH mkrepo() { name=$1 count=$2 dir=$PWD - test -d $name && return + test -d "$name" && return printf "Creating testrepo %s\n" $name - mkdir -p $name - cd $name + mkdir -p "$name" + cd "$name" git init - for ((n=1; n<=count; n++)) + n=1 + while test $n -le $count do echo $n >file-$n git add file-$n git commit -m "commit $n" + n=$(expr $n + 1) done + if test "$3" = "testplus" + then + echo "hello" >a+b + git add a+b + git commit -m "add a+b" + git branch "1+2" + fi cd $dir } @@ -40,33 +50,48 @@ setup_repos() mkdir -p trash/cache mkrepo trash/repos/foo 5 >/dev/null mkrepo trash/repos/bar 50 >/dev/null + mkrepo trash/repos/foo+bar 10 testplus >/dev/null + mkrepo "trash/repos/with space" 2 >/dev/null cat >trash/cgitrc </dev/null test_count=0 test_failed=0 + echo "[$0]" "$@" >test-output.log echo "$@" "($0)" } @@ -75,24 +100,40 @@ tests_done() printf "\n" if test $test_failed -gt 0 then - printf "[%s of %s tests failed]\n" $test_failed $test_count + printf "test: *** %s failure(s), logfile=%s\n" \ + $test_failed "$(pwd)/test-output.log" false fi } run_test() { + bug=0 + if test "$1" = "BUG" + then + bug=1 + shift + fi desc=$1 script=$2 - ((test_count++)) - eval "$2" >test-output.log + test_count=$(expr $test_count + 1) + printf "\ntest %d: name='%s'\n" $test_count "$desc" >>test-output.log + printf "test %d: eval='%s'\n" $test_count "$2" >>test-output.log + eval "$2" >>test-output.log 2>>test-output.log res=$? - if test $res = 0 + printf "test %d: exitcode=%d\n" $test_count $res >>test-output.log + if test $res = 0 -a $bug = 0 + then + printf " %2d) %-60s [ok]\n" $test_count "$desc" + elif test $res = 0 -a $bug = 1 then - printf " %s: ok - %s\n" $test_count "$desc" + printf " %2d) %-60s [BUG FIXED]\n" $test_count "$desc" + elif test $bug = 1 + then + printf " %2d) %-60s [KNOWN BUG]\n" $test_count "$desc" else - ((test_failed++)) - printf " %s: fail - %s\n" $test_count "$desc" + test_failed=$(expr $test_failed + 1) + printf " %2d) %-60s [failed]\n" $test_count "$desc" fi } @@ -105,4 +146,3 @@ cgit_url() { CGIT_CONFIG="$PWD/trash/cgitrc" QUERY_STRING="url=$1" "$PWD/../cgit" } -