Home | History | Annotate | Line # | Download | only in test
      1   1.1  cgd #!/bin/sh -
      2  1.10  cgd #	$NetBSD: mkscripts.sh,v 1.10 1995/04/23 10:07:36 cgd Exp $
      3  1.10  cgd #
      4   1.1  cgd # This script generates ed test scripts (.ed) from .t files
      5   1.1  cgd 
      6   1.1  cgd PATH="/bin:/usr/bin:/usr/local/bin/:."
      7   1.6  alm ED=$1
      8   1.6  alm [ ! -x $ED ] && { echo "$ED: cannot execute"; exit 1; }
      9   1.1  cgd 
     10   1.1  cgd for i in *.t; do
     11   1.1  cgd #	base=${i%.*}
     12   1.4  alm #	base=`echo $i | sed 's/\..*//'`
     13   1.8  alm #	base=`expr $i : '\([^.]*\)'`
     14   1.8  alm #	(
     15   1.8  alm #	echo "#!/bin/sh -"
     16   1.8  alm #	echo "$ED - <<\EOT"
     17   1.8  alm #	echo "r $base.d"
     18   1.8  alm #	cat $i
     19   1.8  alm #	echo "w $base.o"
     20   1.8  alm #	echo EOT
     21   1.8  alm #	) >$base.ed
     22   1.8  alm #	chmod +x $base.ed
     23   1.8  alm # The following is pretty ugly way of doing the above, and not appropriate 
     24   1.8  alm # use of ed  but the point is that it can be done...
     25   1.8  alm 	base=`$ED - \!"echo $i" <<-EOF
     26   1.8  alm 		s/\..*
     27   1.8  alm 	EOF`
     28   1.8  alm 	$ED - <<-EOF
     29   1.8  alm 		a
     30   1.8  alm 		#!/bin/sh -
     31   1.8  alm 		$ED - <<\EOT
     32   1.8  alm 		H
     33   1.8  alm 		r $base.d
     34   1.8  alm 		w $base.o
     35   1.8  alm 		EOT
     36   1.8  alm 		.
     37   1.8  alm 		-2r $i
     38   1.8  alm 		w $base.ed
     39   1.8  alm 		!chmod +x $base.ed
     40   1.8  alm 	EOF
     41   1.2  cgd done
     42   1.2  cgd 
     43   1.2  cgd for i in *.err; do
     44   1.2  cgd #	base=${i%.*}
     45   1.5  alm #	base=`echo $i | sed 's/\..*//'`
     46   1.8  alm #	base=`expr $i : '\([^.]*\)'`
     47   1.8  alm #	(
     48   1.8  alm #	echo "#!/bin/sh -"
     49   1.8  alm #	echo "$ED - <<\EOT"
     50   1.8  alm #	echo H
     51   1.8  alm #	echo "r $base.err"
     52   1.8  alm #	cat $i
     53   1.8  alm #	echo "w $base.o"
     54   1.8  alm #	echo EOT
     55   1.8  alm #	) >$base-err.ed
     56   1.8  alm #	chmod +x $base-err.ed
     57   1.8  alm # The following is pretty ugly way of doing the above, and not appropriate 
     58   1.8  alm # use of ed  but the point is that it can be done...
     59   1.8  alm 	base=`$ED - \!"echo $i" <<-EOF
     60   1.8  alm 		s/\..*
     61   1.8  alm 	EOF`
     62   1.8  alm 	$ED - <<-EOF
     63   1.8  alm 		a
     64   1.8  alm 		#!/bin/sh -
     65   1.8  alm 		$ED - <<\EOT
     66   1.8  alm 		H
     67   1.8  alm 		r $base.err
     68   1.8  alm 		w $base.o
     69   1.8  alm 		EOT
     70   1.8  alm 		.
     71   1.8  alm 		-2r $i
     72   1.8  alm 		w ${base}.red
     73   1.8  alm 		!chmod +x ${base}.red
     74   1.8  alm 	EOF
     75   1.1  cgd done
     76