#!/bin/sh # eotk (c) 2017 Alec Muffett # gentlemen, behold! unit tests! export EXP_TAG="TAG $$ `date`" TEMPLATE=/tmp/exp-template$$ EXPECT=/tmp/exp-expect$$ RESULT=/tmp/exp-result$$ LOG=/tmp/exp-log$$ Template() { ( cat echo "%EXP_TAG%" # add to end so line numbers not off ) > $TEMPLATE } Expect() { ( echo "# -- DO NOT EDIT THIS FILE! --" cat echo "$EXP_TAG" echo "# -- DO NOT EDIT THIS FILE! --" ) > $EXPECT } Test() { ./expand-template.pl --debug $TEMPLATE >$RESULT 2>$LOG if ! cmp $EXPECT $RESULT ; then echo :::: broken test: "$@" :::: cat $LOG echo "" echo :::: problem :::: ls -l $EXPECT $RESULT diff -c $EXPECT $RESULT exit 1 fi } ################################################################## # see if this works Template <