testsuite: add tests for {ms5,shaN}sum

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko 2010-10-16 21:26:47 +02:00
parent bcccad3531
commit e8ee86250d
5 changed files with 56 additions and 1 deletions

View File

@ -1,3 +1,3 @@
#!/bin/sh #!/bin/sh
. bunzip2.tests . ./bunzip2.tests

46
testsuite/md5sum.tests Executable file
View File

@ -0,0 +1,46 @@
#!/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"
mkdir testdir 2>/dev/null
result=`(
cd testdir || { echo "cannot cd testdir!" >&2; exit 1; }
text="The quick brown fox jumps over the lazy dog"
n=0
while test $n -le 999; do
yes "$text" | head -c $n | "$sum"
: $((n++))
done | "$sum"
)`
rm -rf testdir
FAILCOUNT=0
if test x"$result" = x"$expected -"; then
echo "PASS: $sum"
exit 0
fi
echo "FAIL: $sum (r:$result exp:$expected)"
exit 1

3
testsuite/sha1sum.tests Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
. ./md5sum.tests sha1sum d41337e834377140ae7f98460d71d908598ef04f

3
testsuite/sha256sum.tests Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
. ./md5sum.tests sha256sum 8e1d3ed57ebc130f0f72508446559eeae06451ae6d61b1e8ce46370cfb8963c3

3
testsuite/sha512sum.tests Executable file
View File

@ -0,0 +1,3 @@
#!/bin/sh
. ./md5sum.tests sha512sum fe413e0f177324d1353893ca0772ceba83fd41512ba63895a0eebb703ef9feac2fb4e92b2cb430b3bda41b46b0cb4ea8307190a5cc795157cfb680a9cd635d0f