BASH
35
test sort
Guest on 8th May 2022 07:33:08 AM
#! /bin/sh
echo_n='echo -n'
if [ -x /usr/ucb/echo ]; then echo_n='/usr/ucb/echo -n'; fi
TMPDIR=${TMP-/tmp}/smat$$; rm -rf $TMPDIR; mkdir $TMPDIR || exit 1
trap 'rm -rf $TMPDIR' 0 1 2 15
failed () {
echo;
if [ -f $TMPDIR/out ]; then
SEED=`cat $TMPDIR/out | awk '{print $2}'`
echo "error found when executing \"./stlsort -s $SEED $algo $NELEM\""
exit 1
fi
exit 0
}
for algo in early lomuto tiled; do
$echo_n "Testing $algo"
for N in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20; do
NELEM=`./stlsort -S i 0 2>&1 >/dev/null | awk '{printf "%d\n", $2 % 5000}'`
./stlsort -S $algo $NELEM 2>$TMPDIR/out 1>/dev/null || failed
$echo_n .
done
echo ' ok'
done
exit 0