+++ /dev/null
-#!/bin/bash
-# $Id$
-
-######################################################################
-#
-# Compare the file $1/output with files in $1/cmp
-#
-# Upon success, store the name of the successful file in $1/cmp
-# in the file $1/OK
-#
-#
-# This is a possible replacement of the hardcoded hierarchies in the
-# tests directory.
-######################################################################
-
-# Process command line arguments.
-# $1 is the name of the test.
-#
-# options may be
-# -v for verbose output of diff
-# -y for side-by-side diff
-# -R for no recursion
-
-diffout="/dev/null"
-diffopt=""
-result=""
-okname=""
-recurse="true"
-
-for arg in $* ; do
- if test "x$arg" = "x-v" ; then diffout="/dev/stdout" ; fi
- if test "x$arg" = "x-y" ; then diffopt="-y" ; fi
- if test "x$arg" = "x-R" ; then recurse="false" ; fi
-done
-
-# First, we check if $1/OK exists. If so, it hopefully contains the
-# name of the successful comparison file in $1/cmp
-
-if test -r $1/OK; then
- okname=`cat $1/OK`
- if test "x$okname" != "x" ; then
- result=" $okname"
- if diff $diffopt $1/output $1/cmp/$okname > $diffout ; then
- touch $1/OK
- echo "$result"
- exit 0 ;
- else
- echo " $1/cmp/$okname ";
- fi
- fi
-fi
-
-# rm -f $1/OK
-
-# If this round failed, check all files in this directory
-# If successful, write the name into $1/OK
-if test "recurse" == "true" ; then
- echo "$result"
- exit 1;
-fi
-
-for file in `cd $1/cmp ; ls` ; do
- if test "$diffout" != "/dev/null" ; then
- echo
- echo "################### $1/cmp/$file" > $diffout
- fi
- if test -f $1/cmp/$file ; then
- result="$result $file"
- if diff $diffopt $1/output $1/cmp/$file > $diffout ; then
- echo $file > $1/OK
- echo "$result"
- exit 0 ;
- fi
- fi
-done
-
-# All files failed
-
-echo "$result"
-exit 1
-