equal
deleted
inserted
replaced
1 #!/bin/sh -e |
1 #!/bin/sh -e |
|
2 # |
|
3 # environment variables: |
|
4 # |
|
5 # TEST_COVERAGE - set non-empty if you want to print test coverage report |
|
6 # COVERAGE_STDLIB - set non-empty to report coverage of standard library |
2 |
7 |
3 LANG="C"; export LANG |
8 LANG="C"; export LANG |
4 LC_CTYPE="C"; export LC_CTYPE |
9 LC_CTYPE="C"; export LC_CTYPE |
5 LC_NUMERIC="C"; export LC_NUMERIC |
10 LC_NUMERIC="C"; export LC_NUMERIC |
6 LC_TIME="C"; export LC_TIME |
11 LC_TIME="C"; export LC_TIME |
17 TZ=GMT; export TZ |
22 TZ=GMT; export TZ |
18 HGEDITOR=true; export HGEDITOR |
23 HGEDITOR=true; export HGEDITOR |
19 HGMERGE=true; export HGMERGE |
24 HGMERGE=true; export HGMERGE |
20 HGUSER="test"; export HGUSER |
25 HGUSER="test"; export HGUSER |
21 HGRCPATH=""; export HGRCPATH |
26 HGRCPATH=""; export HGRCPATH |
|
27 OS=`uname` |
|
28 |
|
29 case "$OS" in |
|
30 HP-UX|SunOS) |
|
31 DIFFOPTS= |
|
32 ;; |
|
33 *) |
|
34 DIFFOPTS=-u |
|
35 ;; |
|
36 esac |
22 |
37 |
23 if [ `echo -n HG` = "-n HG" ] |
38 if [ `echo -n HG` = "-n HG" ] |
24 then |
39 then |
25 ECHO_N=echo |
40 ECHO_N=echo |
26 NNL="\c" |
41 NNL="\c" |
62 cat tests/install.err |
77 cat tests/install.err |
63 exit 1 |
78 exit 1 |
64 fi |
79 fi |
65 cd "$TESTDIR" |
80 cd "$TESTDIR" |
66 |
81 |
67 BINDIR="$INST/bin" |
82 BINDIR="$INST/bin"; export BINDIR |
|
83 if [ -n "$TEST_COVERAGE" ]; then |
|
84 COVERAGE_FILE="$TESTDIR/.coverage"; export COVERAGE_FILE |
|
85 rm -f "$COVERAGE_FILE" |
|
86 mv "$BINDIR/hg" "$BINDIR/hg.py" |
|
87 { |
|
88 echo '#!/bin/sh' |
|
89 echo "exec \"${PYTHON-python}\" \"$TESTDIR/coverage.py\"" \ |
|
90 "-x \"$BINDIR/hg.py\" \"\$@\"" |
|
91 } > "$BINDIR/hg" |
|
92 chmod 700 "$BINDIR/hg" |
|
93 fi |
|
94 |
68 PATH="$BINDIR:$PATH"; export PATH |
95 PATH="$BINDIR:$PATH"; export PATH |
69 if [ -n "$PYTHON" ]; then |
96 if [ -n "$PYTHON" ]; then |
70 { |
97 { |
71 echo "#!/bin/sh" |
98 echo "#!/bin/sh" |
72 echo "exec \"$PYTHON"'" "$@"' |
99 echo "exec \"$PYTHON"'" "$@"' |
99 echo |
126 echo |
100 echo "$1 generated unexpected output:" |
127 echo "$1 generated unexpected output:" |
101 cat "$ERR" |
128 cat "$ERR" |
102 fail=1 |
129 fail=1 |
103 elif [ -r "$OUTOK" ]; then |
130 elif [ -r "$OUTOK" ]; then |
104 if diff -u "$OUTOK" "$OUT" > /dev/null; then |
131 if diff $DIFFOPTS "$OUTOK" "$OUT" > /dev/null; then |
105 : no differences |
132 : no differences |
106 else |
133 else |
107 cp "$OUT" "$ERR" |
134 cp "$OUT" "$ERR" |
108 echo |
135 echo |
109 echo "$1 output changed:" |
136 echo "$1 output changed:" |
110 diff -u "$OUTOK" "$ERR" || true |
137 diff $DIFFOPTS "$OUTOK" "$ERR" || true |
111 fail=1 |
138 fail=1 |
112 fi |
139 fi |
113 fi |
140 fi |
114 |
141 |
115 cd "$TESTDIR" |
142 cd "$TESTDIR" |
151 done |
178 done |
152 |
179 |
153 echo |
180 echo |
154 echo "Ran $tests tests, $failed failed." |
181 echo "Ran $tests tests, $failed failed." |
155 |
182 |
|
183 if [ -n "$TEST_COVERAGE" ]; then |
|
184 unset PYTHONPATH |
|
185 $ECHO_N "$BINDIR,$TESTDIR,$HGTMP/test-," > "$HGTMP/omit" |
|
186 if [ -z "$COVERAGE_STDLIB" ]; then |
|
187 "${PYTHON-python}" -c 'import sys; print ",".join(sys.path)' \ |
|
188 >> "$HGTMP/omit" |
|
189 fi |
|
190 cd "$PYTHONDIR" |
|
191 "${PYTHON-python}" "$TESTDIR/coverage.py" -r --omit="`cat \"$HGTMP/omit\"`" |
|
192 fi |
|
193 |
156 if [ $failed -gt 0 ] ; then |
194 if [ $failed -gt 0 ] ; then |
157 exit 1 |
195 exit 1 |
158 fi |
196 fi |
159 exit 0 |
197 exit 0 |