Improve test script performance, note issues with slow machines

This commit is contained in:
John Hood
2016-04-01 20:06:45 -04:00
parent 7196dfdb26
commit bd2e8fc746
3 changed files with 18 additions and 3 deletions
+6
View File
@@ -159,3 +159,9 @@ extension unavailable in BSD implementations
It's fairly simple to test each of these scripts independently, but It's fairly simple to test each of these scripts independently, but
the entire chain is a bit prone to behaving oddly in hard-to-debug the entire chain is a bit prone to behaving oddly in hard-to-debug
ways. `set -x` is your friend here. ways. `set -x` is your friend here.
The test scripts are a bit fragile about timeouts. They will
generally run correctly on an unloaded machine without the `make -j`
flag. Using `make -j` is obviously very convenient for development,
and it works fine on faster machines, but I don't recommend it for
automated testing.
+9 -2
View File
@@ -15,7 +15,7 @@ sleepf()
(sleep .1 || sleep 1) > /dev/null 2>&1 (sleep .1 || sleep 1) > /dev/null 2>&1
} }
seq() seq_function()
{ {
if [ $# -lt 1 -o $# -gt 3 ]; then if [ $# -lt 1 -o $# -gt 3 ]; then
echo "bad args" >&2 echo "bad args" >&2
@@ -36,13 +36,20 @@ seq()
esac esac
while :; do while :; do
printf '%d\n' $first printf '%d\n' $first
first=$(expr $first + $incr) first=$(( first + incr ))
if [ $first -gt $last ]; then if [ $first -gt $last ]; then
break break
fi fi
done done
} }
if ! seq 1 > /dev/null 2>&1; then
seq()
{
seq_function "$@"
}
fi
chr() chr()
{ {
printf "\\$(printf %03o $1)" printf "\\$(printf %03o $1)"
+3 -1
View File
@@ -23,7 +23,9 @@ baseline()
# ASCII, then ISO-8859-1. # ASCII, then ISO-8859-1.
for char in $(seq 32 126) $(seq 160 255) ; do for char in $(seq 32 126) $(seq 160 255) ; do
printf '%02x %s ' $char "$(utf8cp $char)" printf '%02x ' $char
utf8cp $char
printf ' '
done done
printf '\n' printf '\n'
} }