sh: Add a test that manipulates various long strings.

It is quite effective at detecting mistakes in memalloc.c and code using it.

It is somewhat slow, but some of the patches in my queue improve it.
This commit is contained in:
Jilles Tjoelker 2010-11-19 22:25:32 +00:00
parent 730b63b0c2
commit 4fadeef03f

View file

@ -0,0 +1,16 @@
# $FreeBSD$
v1=1\ +\ 1
v2=D
v3=C123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
f() { v4="$*"; }
while [ ${#v2} -lt 1250 ]; do
eval $v2=$((3+${#v2})) $v3=$((4-${#v2}))
eval f $(($v2+ $v1 +$v3))
if [ $v4 -ne 9 ]; then
echo bad: $v4 -ne 9 at ${#v2}
fi
v2=x$v2
v3=y$v3
done