tests/run-tests
author Thomas Arendsen Hein <thomas@intevation.de>
Mon, 03 Apr 2006 21:38:59 +0200
changeset 2044 b343e7d454b4
parent 2023 3bdd3bf17cfa
child 2059 a4c271765415
child 2068 4a49daa3a40c
permissions -rwxr-xr-x
Don't allow --style and --template for hg update and hg merge. The only way that changesets will be shown with these command is in an error message when trying to update to an ambiguous branch name.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
544
3d4d5f2aba9a Remove bashisms and use /bin/sh instead of /bin/bash.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 495
diff changeset
     1
#!/bin/sh -e
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
     2
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     3
LANG="C"; export LANG
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     4
LC_CTYPE="C"; export LC_CTYPE
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     5
LC_NUMERIC="C"; export LC_NUMERIC
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     6
LC_TIME="C"; export LC_TIME
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     7
LC_COLLATE="C"; export LC_COLLATE
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     8
LC_MONETARY="C"; export LC_MONETARY
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
     9
LC_MESSAGES="C"; export LC_MESSAGES
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    10
LC_PAPER="C"; export LC_PAPER
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    11
LC_NAME="C"; export LC_NAME
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    12
LC_ADDRESS="C"; export LC_ADDRESS
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    13
LC_TELEPHONE="C"; export LC_TELEPHONE
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    14
LC_MEASUREMENT="C"; export LC_MEASUREMENT
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    15
LC_IDENTIFICATION="C"; export LC_IDENTIFICATION
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    16
LC_ALL=""; export LC_ALL
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    17
TZ=GMT; export TZ
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    18
HGEDITOR=true; export HGEDITOR
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    19
HGMERGE=true; export HGMERGE
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    20
HGUSER="test"; export HGUSER
1951
696230e52e4d add HGRCPATH env var, list of places to look for hgrc files.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1949
diff changeset
    21
HGRCPATH=""; export HGRCPATH
488
77c66c4eec0e [PATCH] Set locale before run-tests does anything
mpm@selenic.com
parents: 473
diff changeset
    22
2023
3bdd3bf17cfa Use [ x = y ] instead of [ x == y ] in shell scripts.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1952
diff changeset
    23
if [ `echo -n HG` = "-n HG" ]
1952
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    24
then
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    25
    ECHO_N=echo
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    26
    NNL="\c"
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    27
else
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    28
    ECHO_N="echo -n"
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    29
    NNL=
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
    30
fi
1925
c71420b186b0 small solaris portability fixes from John Levon <levon@movementarian.org>
Peter van Dijk <peter@dataloss.nl>
parents: 1923
diff changeset
    31
489
a636f7d2cd5b [PATCH] umask for run-tests
mpm@selenic.com
parents: 488
diff changeset
    32
umask 022
a636f7d2cd5b [PATCH] umask for run-tests
mpm@selenic.com
parents: 488
diff changeset
    33
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    34
tests=0
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    35
failed=0
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    36
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    37
HGTMP=""
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    38
cleanup_exit() {
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    39
    rm -rf "$HGTMP"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    40
}
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    41
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    42
# Remove temporary files even if we get interrupted
835
9de3535caae8 Cleaned up trap handling in run-tests, too.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 833
diff changeset
    43
trap "cleanup_exit" 0 # normal exit
9de3535caae8 Cleaned up trap handling in run-tests, too.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 833
diff changeset
    44
trap "exit 255" 1 2 3 6 15 # HUP INT QUIT ABRT TERM
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    45
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    46
HGTMP="${TMPDIR-/tmp}/hgtests.$RANDOM.$RANDOM.$RANDOM.$$"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    47
(umask 077 && mkdir "$HGTMP") || {
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    48
    echo "Could not create temporary directory! Exiting." 1>&2
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    49
    exit 1
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    50
}
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    51
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    52
TESTDIR="$PWD"
1923
7d83a351a936 fix testsuite for freebsd and one timingissue
Peter van Dijk <peter@dataloss.nl>
parents: 1558
diff changeset
    53
export TESTDIR
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    54
INST="$HGTMP/install"
1558
651690fe6be3 fix run-tests' PYTHONPATH
Robin Farine <robin.farine@terminus.org>
parents: 1308
diff changeset
    55
PYTHONDIR="$INST/lib/python"
397
e5683db23ec4 From: Andrew Thompson <andrewkt@aktzero.com>
mpm@selenic.com
parents: 382
diff changeset
    56
cd ..
1558
651690fe6be3 fix run-tests' PYTHONPATH
Robin Farine <robin.farine@terminus.org>
parents: 1308
diff changeset
    57
if ${PYTHON-python} setup.py install --home="$INST" \
651690fe6be3 fix run-tests' PYTHONPATH
Robin Farine <robin.farine@terminus.org>
parents: 1308
diff changeset
    58
  --install-lib="$PYTHONDIR" > tests/install.err 2>&1
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    59
then
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    60
    rm tests/install.err
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    61
else
398
7ed217cfae9e Quiet successful test install in run-tests
mpm@selenic.com
parents: 397
diff changeset
    62
    cat tests/install.err
835
9de3535caae8 Cleaned up trap handling in run-tests, too.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 833
diff changeset
    63
    exit 1
398
7ed217cfae9e Quiet successful test install in run-tests
mpm@selenic.com
parents: 397
diff changeset
    64
fi
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    65
cd "$TESTDIR"
397
e5683db23ec4 From: Andrew Thompson <andrewkt@aktzero.com>
mpm@selenic.com
parents: 382
diff changeset
    66
1878
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    67
BINDIR="$INST/bin"
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    68
PATH="$BINDIR:$PATH"; export PATH
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    69
if [ -n "$PYTHON" ]; then
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    70
    {
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    71
        echo "#!/bin/sh"
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    72
        echo "exec \"$PYTHON"'" "$@"'
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    73
    } > "$BINDIR/python"
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    74
    chmod 755 "$BINDIR/python"
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    75
fi
a5c46cff620f Make #!/usr/bin/env python in test-bdiff run the specified python version.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1558
diff changeset
    76
1558
651690fe6be3 fix run-tests' PYTHONPATH
Robin Farine <robin.farine@terminus.org>
parents: 1308
diff changeset
    77
PYTHONPATH="$PYTHONDIR"; export PYTHONPATH
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    78
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    79
run_one() {
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    80
    rm -f "$1.err"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    81
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    82
    mkdir "$HGTMP/$1"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    83
    cd "$HGTMP/$1"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    84
    fail=0
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    85
    HOME="$HGTMP/$1"; export HOME
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    86
    OUT="$HGTMP/$1.out"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    87
    OUTOK="$TESTDIR/$1.out"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    88
    ERR="$TESTDIR/$1.err"
362
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
    89
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    90
    if "$TESTDIR/$1" > "$OUT" 2>&1; then
803
3d47e7fc33a3 Use tabs instead of spaces where apropriate.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 802
diff changeset
    91
	: no error
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    92
    else
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    93
	echo "$1 failed with error code $?"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    94
	fail=1
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
    95
    fi
362
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
    96
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    97
    if [ -s "$OUT" -a ! -s "$OUTOK" ] ; then
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    98
	cp "$OUT" "$ERR"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
    99
	echo
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   100
	echo "$1 generated unexpected output:"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   101
	cat "$ERR"
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   102
	fail=1
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   103
    elif [ -r "$OUTOK" ]; then
803
3d47e7fc33a3 Use tabs instead of spaces where apropriate.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 802
diff changeset
   104
	if diff -u "$OUTOK" "$OUT" > /dev/null; then
3d47e7fc33a3 Use tabs instead of spaces where apropriate.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 802
diff changeset
   105
	    : no differences
3d47e7fc33a3 Use tabs instead of spaces where apropriate.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 802
diff changeset
   106
	else
833
ad8ff3534fde Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
   107
	    cp "$OUT" "$ERR"
ad8ff3534fde Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
   108
	    echo
ad8ff3534fde Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
   109
	    echo "$1 output changed:"
ad8ff3534fde Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
   110
	    diff -u "$OUTOK" "$ERR" || true
ad8ff3534fde Removed special FIXME handling in run-tests, added bug info to .out files.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 814
diff changeset
   111
	    fail=1
803
3d47e7fc33a3 Use tabs instead of spaces where apropriate.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 802
diff changeset
   112
	fi
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   113
    fi
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   114
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   115
    cd "$TESTDIR"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   116
    rm -f "$HGTMP/$1.out"
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   117
    rm -rf "$HGTMP/$1"
362
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
   118
    return $fail
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
   119
}
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   120
1308
2073e5a71008 Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1279
diff changeset
   121
# list of prerequisite programs
1279
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   122
# stuff from coreutils (cat, rm, etc) are not tested
1949
d2c2e77826c0 tests: add bunzip2 to prerequisite list
Soh Tk-r28629 <tksoh@freescale.com>
parents: 1932
diff changeset
   123
prereqs="python merge diff grep unzip gunzip bunzip2 sed"
1279
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   124
missing=''
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   125
for pre in $prereqs ; do
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   126
    if type $pre > /dev/null 2>&1 ; then
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   127
        : prereq exists
1308
2073e5a71008 Cleanup of tabs and trailing spaces.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 1279
diff changeset
   128
    else
1279
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   129
        missing="$pre $missing"
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   130
    fi
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   131
done
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   132
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   133
if [ "$missing" != ''  ] ; then
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   134
    echo "ERROR: the test suite needs some programs to execute correctly."
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   135
    echo "The following programs are missing: "
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   136
    for pre in $missing; do
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   137
        echo "   $pre"
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   138
    done
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   139
    exit 1
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   140
fi
8ab1c07d4e0b Add checks for programs which are required for the test suite to run.
eric@localhost.localdomain
parents: 925
diff changeset
   141
804
19388dcbac49 Incorporated most of Aron Griffis suggestions for sh compatibility.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 803
diff changeset
   142
TESTS="$*"
798
c28f9feb7c2e Make tests work on Solaris:
Thomas Arendsen Hein <thomas@intevation.de>
parents: 793
diff changeset
   143
if [ -z "$TESTS" ] ; then
804
19388dcbac49 Incorporated most of Aron Griffis suggestions for sh compatibility.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 803
diff changeset
   144
    TESTS=`ls test-* | grep -v "[.~]"`
362
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
   145
fi
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
   146
410373162036 run-tests: run tests given on the command line
mpm@selenic.com
parents: 350
diff changeset
   147
for f in $TESTS ; do
1952
f4df34b6987f tests: fix portability issue for echo -n
TK Soh <teekaysoh@yahoo.com>
parents: 1951
diff changeset
   148
    $ECHO_N ".${NNL}"
804
19388dcbac49 Incorporated most of Aron Griffis suggestions for sh compatibility.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 803
diff changeset
   149
    run_one $f || failed=`expr $failed + 1`
19388dcbac49 Incorporated most of Aron Griffis suggestions for sh compatibility.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 803
diff changeset
   150
    tests=`expr $tests + 1`
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   151
done
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   152
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   153
echo
804
19388dcbac49 Incorporated most of Aron Griffis suggestions for sh compatibility.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 803
diff changeset
   154
echo "Ran $tests tests, $failed failed."
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   155
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   156
if [ $failed -gt 0 ] ; then
835
9de3535caae8 Cleaned up trap handling in run-tests, too.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 833
diff changeset
   157
    exit 1
331
55f63f3b6a54 Add a simple testing framework
mpm@selenic.com
parents:
diff changeset
   158
fi
835
9de3535caae8 Cleaned up trap handling in run-tests, too.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 833
diff changeset
   159
exit 0