#!/bin/sh
#
# Copyright 2004 Bob Friesenhahn <bfriesen@simple.dallas.tx.us>
#
# This file is part of Magick++, the C++ API for ImageMagick and
# ImageMagick.  Please see the file "COPYING" included with Magick++
# for usage and copying restrictions.
#
SRCDIR=`dirname $0`
SRCDIR=`cd $SRCDIR && pwd`/
export SRCDIR
. ./common.shi
echo "1..12"

cd Magick++/tests || exit 1

for mytest in appendImages attributes averageImages coalesceImages coderInfo color colorHistogram exceptions montageImages morphImages readWriteBlob readWriteImages
do
  ./${mytest} && echo "ok" || echo "not ok"
done
:
