#!/bin/sh
# Used by {ms5,shaN}sum

# We pipe texts 0...999 bytes long, {md5,shaN}sum them,
# then {md5,shaN}sum the resulting list.
# Then we compare the result with expected result.
#
# Here are the expected results:
# efe30c482e0b687e0cca0612f42ca29b
# d41337e834377140ae7f98460d71d908598ef04f
# 8e1d3ed57ebc130f0f72508446559eeae06451ae6d61b1e8ce46370cfb8963c3
# fe413e0f177324d1353893ca0772ceba83fd41512ba63895a0eebb703ef9feac2fb4e92b2cb430b3bda41b46b0cb4ea8307190a5cc795157cfb680a9cd635d0f

if ! test "$1"; then
	set -- md5sum efe30c482e0b687e0cca0612f42ca29b
fi

sum="$1"
expected="$2"

test -f "$bindir/.config" && . "$bindir/.config"

test x"$CONFIG_FEATURE_FANCY_HEAD" != x"y" \
&& { echo "SKIPPED: $sum"; exit 0; }

text="The quick brown fox jumps over the lazy dog"
text=`yes "$text" | head -c 9999`

result=`(
n=0
while test $n -le 999; do
	echo "$text" | head -c $n | "$sum"
	n=$(($n+1))
done | "$sum"
)`

if test x"$result" = x"$expected  -"; then
	echo "PASS: $sum"
	exit 0
fi

echo "FAIL: $sum (r:$result exp:$expected)"
exit 1
