#! /bin/sh

PROG=codecs

set -x

${PROG} randomise 23816 > a
ls -al a | awk '$5 != 23816 { print "randomised incorrect size!" }'
${PROG} btoa a > a2
${PROG} atob a2 > a3
ls -al a a2 a3
cmp a a3
${PROG} uuencode a > a4
${PROG} uudecode a4 > a5
cmp a a5
${PROG} fulluuencode a > a4
${PROG} uudecode a4 > a5
cmp a a5
${PROG} randomise 535 > a6
ls -al a6 | awk '$5 != 535 { print "randomised incorrect size!" }'
${PROG} btoa a6 > a7
${PROG} atob a7 > a8
ls -al a6 a7 a8
cmp a6 a8
cp TODO b
${PROG} base85encode b > b.85
${PROG} base85decode b.85 > b.2
ls -al b b.85 b.2
cmp b b.2
${PROG} 'sed:s/o/O/' b > bigb
${PROG} 'sed:s/O/o/' bigb > bigb2
cmp b bigb2
date +%s > d
${PROG} secs2str d > d2
${PROG} str2secs d2 > d3
cat d d2 d3
diff d d3
cp TODO e
${PROG} rot13 e > e2
${PROG} rot13 e2 > e3
diff e e3
${PROG} sha1 e | tr '\0' '\n' > e4
sha1 < e > e5
diff e4 e5
${PROG} zero 77523 > z
ls -al z | awk '$5 != 77523 { print "zero incorrect size!" }'
cp TODO f
${PROG} ascii2ebcdic f > f2
${PROG} ebcdic2ascii f2 > f3
diff f f3
echo crooks | ${PROG} soundex
echo crux | ${PROG} soundex
echo crooks | ${PROG} metaphone
echo crux | ${PROG} metaphone
${PROG} randomise 309866 > g
${PROG} gzip g > g2
${PROG} gunzip g2 > g3
cmp g g3
rm -f a a2 a3 a4 a5 a6 a7 a8 b b.85 b.2 bigb bigb2 d d2 d3 e e2 e3 e4 e5 z f f2 f3 g g2 g3
