123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108 |
- #! /bin/sh
- PWD=`pwd`
- P=`expr $0 : '\(.*\)/.*'`
- DIR=`cd $P; pwd`/../../src
- if [ -d $DIR ]; then
- PATH=`cd $DIR;pwd`:$PATH
- fi
- quicktest() {
- DIR=quicktest.$$
- mkdir $DIR
- cd $DIR
- TAR_OPTIONS=""
- export TAR_OPTIONS
- tar xf $2
- tar -cf ../archive -H ustar -T $1
- cd ..
- ${TARTEST:-tartest} -v < $2 > $DIR/old.out
- ${TARTEST:-tartest} -v < archive > $DIR/new.out
- if cmp $DIR/old.out $DIR/new.out; then
- echo "PASS"
- rm -r $DIR
- exit 0
- else
- echo "FAIL. Examine $DIR for details"
- exit 1
- fi
- }
- test_access() {
- if [ -r $1 ]; then
- :
- else
- echo "$1 does not exist or is unreadable"
- echo 77
- fi
- }
- check_environ() {
- if [ "$STAR_TESTSCRIPTS" = "" ]; then
- echo "STAR_TESTSCRIPTS not set"
- exit 77
- fi
- if [ -d $STAR_TESTSCRIPTS ]; then
- :
- else
- echo "STAR_TESTSCRIPTS is not a directory"
- exit 77
- fi
- ARCHIVE=$STAR_TESTSCRIPTS/ustar-all-quicktest.tar
- test_access $ARCHIVE
- FILELIST=$STAR_TESTSCRIPTS/quicktest.filelist
- test_access $FILELIST
- ${TARTEST:-tartest} < /dev/null > /dev/null 2>&1
- if [ $? -eq 127 ]; then
- echo "tartest not in your path"
- exit 77
- fi
- tar --version
- }
- getargs() {
- for option
- do
- case $option in
- *=*) eval $option;;
- *) echo "Unknown option: $option" >&2
- exit 77;;
- esac
- done
- }
- if [ -w / ]; then
- getargs $*
- check_environ
- quicktest $FILELIST $ARCHIVE
- else
- echo "You need to be root to run this test"
- exit 77
- fi
|