]>
git.cameronkatri.com Git - cgit.git/blob - tests/setup.sh
1 # This file should be sourced by all test-scripts
4 # prepare_tests(description) - setup for testing, i.e. create repos+config
5 # run_test(description, script) - run one test, i.e. eval script
8 # cgit_query(querystring) - call cgit with the specified querystring
9 # cgit_url(url) - call cgit with the specified virtual url
14 # prepare_tests "html validation"
15 # run_test 'repo index' 'cgit_url "/" | tidy -e'
16 # run_test 'repo summary' 'cgit_url "/foo" | tidy -e'
23 test -d $name && return
24 printf "Creating testrepo %s\n" $name
28 for ((n
=1; n
<=count
; n
++))
32 git commit
-m "commit $n"
34 if test "$3" = "testplus"
38 git commit
-m "add a+b"
48 mkrepo trash
/repos
/foo
5 >/dev
/null
49 mkrepo trash
/repos
/bar
50 >/dev
/null
50 mkrepo trash
/repos
/foo
+bar
10 testplus
>/dev
/null
51 cat >trash
/cgitrc
<<EOF
53 cache-root=$PWD/trash/cache
56 snapshots=tar.gz tar.bz zip
57 enable-log-filecount=1
58 enable-log-linecount=1
64 repo.path=$PWD/trash/repos/foo/.git
65 # Do not specify a description for this repo, as it then will be assigned
66 # the constant value "[no description]" (which actually used to cause a
70 repo.path=$PWD/trash/repos/bar/.git
71 repo.desc=the bar repo
74 repo.path=$PWD/trash/repos/foo+bar/.git
75 repo.desc=the foo+bar repo
82 rm -f test-output.log
2>/dev
/null
85 echo "[$0]" "$@" >test-output.log
92 if test $test_failed -gt 0
94 printf "test: *** %s failure(s), logfile=%s\n" \
95 $test_failed "$(pwd)/test-output.log"
105 printf "\ntest %d: name='%s'\n" $test_count "$desc" >>test-output.log
106 printf "test %d: eval='%s'\n" $test_count "$2" >>test-output.log
107 eval "$2" >>test-output.log
2>>test-output.log
109 printf "test %d: exitcode=%d\n" $test_count $res >>test-output.log
112 printf " %2d) %-60s [ok]\n" $test_count "$desc"
115 printf " %2d) %-60s [failed]\n" $test_count "$desc"
121 CGIT_CONFIG
="$PWD/trash/cgitrc" QUERY_STRING
="$1" "$PWD/../cgit"
126 CGIT_CONFIG
="$PWD/trash/cgitrc" QUERY_STRING
="url=$1" "$PWD/../cgit"