#! /bin/bash
# This script tests: pnmtile
# Also requires: pnmcat


# Test 1.  Should print 4228632379 259
pnmtile 40 50 testgrid.pbm | cksum

tmpdir=${tmpdir:-/tmp}

# Test 2.  Compare 2x2 tile images produced by pnmtile and pnmcat
# Should print 0
testimg2_ppm=${tmpdir}/testimg2.ppm
testimg4_ppm=${tmpdir}/testimg4.ppm

pnmtile 454 298 testimg.ppm > ${testimg4_ppm} &&
pnmcat -lr testimg.ppm testimg.ppm > ${testimg2_ppm} &&
pnmcat -tb ${testimg2_ppm} ${testimg2_ppm} | \
cmp -s - ${testimg4_ppm}
echo ${PIPESTATUS[@]} ":" $?

rm ${testimg2_ppm} ${testimg4_ppm}

test_out=${tmpdir}/test_out

echo 1>&2
echo "Invalid command-line argument combinations." 1>&2
echo "Error messages should appear below the line." 1>&2
echo "-----------------------------------------------------------" 1>&2

pnmtile 100 testgrid.pbm > ${test_out} || \
  echo -n "Expected failure 1"
  test -s ${test_out}; echo " "$?
  rm -f ${test_out}

pnmtile 100 0 testgrid.pbm > ${test_out} || \
  echo -n "Expected failure 2"
  test -s ${test_out}; echo " "$?
  rm -f ${test_out}

pnmtile 0 100 testgrid.pbm > ${test_out} || \
  echo -n "Expected failure 3"
  test -s ${test_out}; echo " "$?
  rm -f ${test_out}

pnmtile 100 100 100 testgrid.pbm > ${test_out} || \
  echo -n "Expected failure 4"
  test -s ${test_out}; echo " "$?
  rm -f ${test_out}
