run-tests: t4201 passes now
[msysgit.git] / share / msysGit / run-tests.sh
blob1ec5eb0477b7c2828dec4fd65433960c5d6b38b5
1 #!/bin/sh
3 # This list was generated after a run of "make test" using generate_skip_list
5 export GIT_SKIP_TESTS='
6 t1300.70
7 t1300.71
8 t5000.12
9 t5530.6
10 t5560.2
11 t5560.3
12 t5560.4
13 t5560.5
14 t5560.6
15 t5560.7
16 t5560.8
17 t5560.9
18 t5560.10
19 t5560.11
20 t5560.12
21 t5560.13
22 t7602.3
23 t7602.4
24 t7602.5
25 t9001.8
26 t9001.10
27 t9001.12
28 t9500.1
29 t9500.2
30 t9500.3
31 t9500.4
32 t9500.5
33 t9500.6
34 t9500.7
35 t9500.8
36 t9500.10
37 t9500.11
38 t9500.12
39 t9500.13
40 t9500.14
41 t9500.15
42 t9500.16
43 t9500.17
44 t9500.18
45 t9500.19
46 t9500.20
47 t9500.21
48 t9500.22
49 t9500.23
50 t9500.24
51 t9500.25
52 t9500.26
53 t9500.27
54 t9500.28
55 t9500.29
56 t9500.30
57 t9500.32
58 t9500.33
59 t9500.34
60 t9500.35
61 t9500.36
62 t9500.38
63 t9500.39
64 t9500.40
65 t9500.41
66 t9500.42
67 t9500.43
68 t9500.44
69 t9500.45
70 t9500.47
71 t9500.48
72 t9500.50
73 t9500.51
74 t9500.52
75 t9500.53
76 t9500.54
77 t9500.55
78 t9500.56
79 t9500.57
80 t9500.58
81 t9500.59
82 t9500.60
83 t9500.61
84 t9500.62
85 t9500.63
86 t9500.64
87 t9500.65
88 t9500.66
89 t9500.67
90 t9500.68
91 t9500.69
92 t9500.70
93 t9500.71
94 t9500.72
95 t9500.73
96 t9500.74
97 t9500.75
98 t9500.76
99 t9500.77
100 t9500.78
101 t9500.79
102 t9500.80
103 t9500.81
104 t9500.82
105 t9500.83
106 t9500.84
107 t9500.85
108 t9500.86
109 t9500.87
110 t9501.1
111 t9501.2
112 t9501.3
113 t9501.4
114 t9501.5
115 t9501.6
116 t9501.7
117 t9501.8
118 t9501.9
119 t9501.10
120 t9502.2
121 t9502.3
122 t9502.4
123 t9502.5
124 t9502.6
125 t9502.7
126 t9502.8
127 t9502.9
128 t9502.10
131 #echo "$GIT_SKIP_TESTS" | tr '\n' ' '; exit
132 export NO_SVN_TESTS=t
133 case " $*" in
134 *' -j'*) ;;
135 *) PARALLEL_MAKE=-j5;;
136 esac
138 generate_skip_list () {
139 cd /git/t
140 for d in trash*
142 name=${d#trash directory.}
143 short=${name%%-*}
144 sh $name.sh |
145 sed -n "s/.*FAIL \([0-9]*\).*/$short.\1/p"
146 done
149 test generate_skip_list = "$1" && {
150 generate_skip_list
151 exit
154 get_test_name () {
155 echo "$*" | sed 's/.* \(t[0-9].*\)\.sh .*/\1/'
158 get_finished_tests () {
159 REMAINING_TESTS=
160 for t in $CURRENT_TESTS
162 f=$(grep failed t/test-results/${t%.sh}-[1-9]* 2> /dev/null)
163 if test ! -z "$f"
164 then
165 printf '%70s ' $(cd t && echo $t*.sh)
166 if test "failed 0" = "$f"
167 then
168 echo -e '\033[32mok\033[0m'
169 else
170 FAILED_TESTS="$FAILED_TESTS $t"
171 echo -e '\033[31mfailed\033[0m'
173 else
174 REMAINING_TESTS="$REMAINING_TESTS $t"
176 done
177 CURRENT_TESTS="$REMAINING_TESTS"
180 cd /git &&
181 echo make $PARALLEL_MAKE &&
182 (cd t &&
183 rm -rf test-results &&
184 time make $PARALLEL_MAKE -k "$@") 2>&1 |
186 CURRENT_TESTS=
187 FAILED_TESTS=
188 while read line
190 case "$line" in
191 "*** t"*)
192 TEST_NAME=$(get_test_name "$line")
193 CURRENT_TESTS="$CURRENT_TESTS $TEST_NAME"
194 printf "Currently running $(echo "$CURRENT_TESTS" |
195 sed 's/-[^ ]*//g')\\r"
197 '* passed'*)
198 get_finished_tests
200 esac
201 done
202 test -z "$FAILED_TESTS" || echo "These tests failed: $FAILED_TESTS"
203 test -z "$CURRENT_TESTS" || echo "Unfinished tests: $CURRENT_TESTS")