Blame test/common.sh

Packit 7838c8
# Common code fragment for tests
Packit 7838c8
#
Packit 7838c8
srcdir=${srcdir:-.}
Packit 7838c8
BUILDDIR=`pwd`
Packit 7838c8
SRCDIR=`dirname $0`
Packit 7838c8
SRCDIR=`cd $SRCDIR && pwd`
Packit 7838c8
TOPSRCDIR=`cd $srcdir/.. && pwd`
Packit 7838c8
TOOLS=`cd ../tools && pwd`
Packit 7838c8
IMAGES="${SRCDIR}/images"
Packit 7838c8
Packit 7838c8
# Aliases for built tools
Packit 7838c8
FAX2PS=${TOOLS}/fax2ps
Packit 7838c8
FAX2TIFF=${TOOLS}/fax2tiff
Packit 7838c8
PAL2RGB=${TOOLS}/pal2rgb
Packit 7838c8
PPM2TIFF=${TOOLS}/ppm2tiff
Packit 7838c8
RAW2TIFF=${TOOLS}/raw2tiff
Packit 7838c8
RGB2YCBCR=${TOOLS}/rgb2ycbcr
Packit 7838c8
THUMBNAIL=${TOOLS}/thumbnail
Packit 7838c8
TIFF2BW=${TOOLS}/tiff2bw
Packit 7838c8
TIFF2PDF=${TOOLS}/tiff2pdf
Packit 7838c8
TIFF2PS=${TOOLS}/tiff2ps
Packit 7838c8
TIFF2RGBA=${TOOLS}/tiff2rgba
Packit 7838c8
TIFFCMP=${TOOLS}/tiffcmp
Packit 7838c8
TIFFCP=${TOOLS}/tiffcp
Packit 7838c8
TIFFCROP=${TOOLS}/tiffcrop
Packit 7838c8
TIFFDITHER=${TOOLS}/tiffdither
Packit 7838c8
TIFFDUMP=${TOOLS}/tiffdump
Packit 7838c8
TIFFINFO=${TOOLS}/tiffinfo
Packit 7838c8
TIFFMEDIAN=${TOOLS}/tiffmedian
Packit 7838c8
TIFFSET=${TOOLS}/tiffset
Packit 7838c8
TIFFSPLIT=${TOOLS}/tiffsplit
Packit 7838c8
Packit 7838c8
# Aliases for input test files
Packit 7838c8
IMG_MINISBLACK_1C_16B=${IMAGES}/minisblack-1c-16b.tiff
Packit 7838c8
IMG_MINISBLACK_1C_8B=${IMAGES}/minisblack-1c-8b.tiff
Packit 7838c8
IMG_MINISWHITE_1C_1B=${IMAGES}/miniswhite-1c-1b.tiff
Packit 7838c8
IMG_PALETTE_1C_1B=${IMAGES}/palette-1c-1b.tiff
Packit 7838c8
IMG_PALETTE_1C_4B=${IMAGES}/palette-1c-4b.tiff
Packit 7838c8
IMG_PALETTE_1C_8B=${IMAGES}/palette-1c-8b.tiff
Packit 7838c8
IMG_RGB_3C_16B=${IMAGES}/rgb-3c-16b.tiff
Packit 7838c8
IMG_RGB_3C_8B=${IMAGES}/rgb-3c-8b.tiff
Packit 7838c8
IMG_MINISBLACK_2C_8B_ALPHA=${IMAGES}/minisblack-2c-8b-alpha.tiff
Packit 7838c8
IMG_QUAD_LZW_COMPAT=${IMAGES}/quad-lzw-compat.tiff
Packit 7838c8
Packit 7838c8
IMG_MINISWHITE_1C_1B_PBM=${IMAGES}/miniswhite-1c-1b.pbm
Packit 7838c8
IMG_MINISBLACK_1C_8B_PGM=${IMAGES}/minisblack-1c-8b.pgm
Packit 7838c8
IMG_RGB_3C_8B_PPM=${IMAGES}/rgb-3c-8b.ppm
Packit 7838c8
Packit 7838c8
# All uncompressed image files
Packit 7838c8
IMG_UNCOMPRESSED="${IMG_MINISBLACK_1C_16B} ${IMG_MINISBLACK_1C_8B} ${IMG_MINISWHITE_1C_1B} ${IMG_PALETTE_1C_1B} ${IMG_PALETTE_1C_4B} ${IMG_PALETTE_1C_4B} ${IMG_PALETTE_1C_8B} ${IMG_RGB_3C_8B}"
Packit 7838c8
Packit 7838c8
#
Packit 7838c8
# Test a simple convert-like command.
Packit 7838c8
#
Packit 7838c8
# f_test_convert command infile outfile
Packit 7838c8
f_test_convert ()
Packit 7838c8
{ 
Packit 7838c8
  command=$1
Packit 7838c8
  infile=$2
Packit 7838c8
  outfile=$3
Packit 7838c8
  rm -f $outfile
Packit 7838c8
  echo "$MEMCHECK $command $infile $outfile"
Packit 7838c8
  eval $MEMCHECK $command $infile $outfile
Packit 7838c8
  status=$?
Packit 7838c8
  if [ $status != 0 ] ; then
Packit 7838c8
    echo "Returned failed status $status!"
Packit 7838c8
    echo "Output (if any) is in \"${outfile}\"."
Packit 7838c8
    exit $status
Packit 7838c8
  fi
Packit 7838c8
}
Packit 7838c8
Packit 7838c8
#
Packit 7838c8
# Test a simple command which sends output to stdout
Packit 7838c8
#
Packit 7838c8
# f_test_stdout command infile outfile
Packit 7838c8
f_test_stdout ()
Packit 7838c8
{ 
Packit 7838c8
  command=$1
Packit 7838c8
  infile=$2
Packit 7838c8
  outfile=$3
Packit 7838c8
  rm -f $outfile
Packit 7838c8
  echo "$MEMCHECK $command $infile > $outfile"
Packit 7838c8
  eval $MEMCHECK $command $infile > $outfile
Packit 7838c8
  status=$?
Packit 7838c8
  if [ $status != 0 ] ; then
Packit 7838c8
    echo "Returned failed status $status!"
Packit 7838c8
    echo "Output (if any) is in \"${outfile}\"."
Packit 7838c8
    exit $status
Packit 7838c8
  fi
Packit 7838c8
}
Packit 7838c8
Packit 7838c8
#
Packit 7838c8
# Execute a simple command (e.g. tiffinfo) with one input file
Packit 7838c8
#
Packit 7838c8
# f_test_exec command infile
Packit 7838c8
f_test_reader ()
Packit 7838c8
{ 
Packit 7838c8
  command=$1
Packit 7838c8
  infile=$2
Packit 7838c8
  echo "$MEMCHECK $command $infile"
Packit 7838c8
  eval $MEMCHECK $command $infile
Packit 7838c8
  status=$?
Packit 7838c8
  if [ $status != 0 ] ; then
Packit 7838c8
    echo "Returned failed status $status!"
Packit 7838c8
    exit $status
Packit 7838c8
  fi
Packit 7838c8
}
Packit 7838c8
Packit 7838c8
#
Packit 7838c8
# Execute tiffinfo on a specified file to validate it
Packit 7838c8
#
Packit 7838c8
# f_tiffinfo_validate infile
Packit 7838c8
f_tiffinfo_validate ()
Packit 7838c8
{
Packit 7838c8
    f_test_reader "$TIFFINFO -D" $1
Packit 7838c8
}
Packit 7838c8
Packit 7838c8
if test "$VERBOSE" = TRUE
Packit 7838c8
then
Packit 7838c8
  set -x
Packit 7838c8
fi
Packit 7838c8