From 13905ead3e09c1dbe363cffcd41336a44dbae403 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Thu, 6 May 2010 02:33:28 +0200 Subject: [PATCH] codea: skript-release im testub10.git --- codea/Makefile | 5 +- codea/exectestcase | 114 ----------------------------------- codea/modtest | 147 --------------------------------------------- 3 files changed, 4 insertions(+), 262 deletions(-) delete mode 100755 codea/exectestcase delete mode 100755 codea/modtest diff --git a/codea/Makefile b/codea/Makefile index 57559f6..5717ca0 100644 --- a/codea/Makefile +++ b/codea/Makefile @@ -39,7 +39,10 @@ clean: rm -f $(NAME) $(OBJS) scanner.c parser.{h,c,output} oxout.{y,l,h} code.c 1test: - ./modtest + ~/test/scripts/modlvatest_codea.sh 2>&1 lvatest: /usr/ftp/pub/ublu/test/$(NAME)/test 2>&1 + +bench: + ~/test/scripts/bench.sh $(NAME) diff --git a/codea/exectestcase b/codea/exectestcase deleted file mode 100755 index 94760df..0000000 --- a/codea/exectestcase +++ /dev/null @@ -1,114 +0,0 @@ -#!/bin/bash - -i=$1 -beispiel=codea -PROGRAM=./$beispiel - -errnum=0 -prgnum=0 - -#LOC=. -LOC=/usr/ftp/pub/ubvl/test/$beispiel - -allow_null_glob_expansion=1 - -if [ ! -d ~/abgabe/$beispiel ]; then - echo "Fehler: Verzeichnis ~/abgabe/$beispiel existiert nicht." - exit 1 -else - cd ~/abgabe/$beispiel - echo 'Teste "make"' - make -fi - -if test ! -x $PROGRAM -then - echo "Fehler: Kein Programm $PROGRAM" - exit 1 -fi -let prgnum=0 -#for i in $LOC/*.0 $LOC2/*.0 -if [ -f $i ]; then - let prgnum=prgnum+1 - let errorfound=0 - echo "==========> Eingabe von $i:" - cat $i - echo - RESFILE=test${beispiel}out$$ - $PROGRAM <$i >$RESFILE - retval=$? - echo -n "Übersetzung: " - if test $retval -eq 0 - then - echo "Status korrekt" - else - echo "[Errot] Status=$retval. Erwartet: 0" - let errorfound=1 - fi - echo - echo "Ausgabe:" - cat $RESFILE | clr.py - mv -f $RESFILE $RESFILE.s - CALLFILE=${i%.*}.call - echo - if [ ! -f $CALLFILE ]; then - echo "Fehler: Datei $CALLFILE existiert nicht, kann Code nicht ausführen..." - exit 1 - else - echo "Übersetze und linke das Testprogramm:" - if cc -g -I. -DCALL=\"$CALLFILE\" $LOC/testmain.c $LOC/callingconvention.o $RESFILE.s; then - echo - echo "Rufe folgendes Codefragment auf:" - cat $CALLFILE - echo - ./a.out - retval=$? - # test callee saved registers - if [ "$retval" -ge 12 ] && [ "$retval" -le 15 ]; then - echo "[Error] Callee-saved register %r$retval modified." - let errorfound=1 - elif [ "$retval" -eq 11 ]; then - echo "[Error] Callee-saved register %rbx modified." - let errorfound=1 - elif [ "$retval" -eq 16 ]; then - echo "[Error] Callee-saved register %rbp modified." - let errorfound=1 - elif [ "$retval" -eq 30 ]; then - echo "[Error] Stack pointer %rsp modified." - let errorfound=1 - else - # test signals - test $retval -gt 127 - retsig=$? - test ${i##*.} = xin - expsig=$? - if test $retsig -eq $expsig; then - if test $retval -eq 1; then - echo "[Error] Das Ergebnis des Aufrufs ist falsch." - let errorfound=1 - elif test $retval -eq 0; then - echo "Das Ergebnis des Ausdrucks ist korrekt." - else - echo "[Error] Erzeugter Code verhaelt sich bzgl. Signalerzeugung anders als erwartet." - let errorfound=1 - fi - else - echo "[Error] Erzeugter Code verhaelt sich bezueglich Signalerzeugung anders als erwartet." - let errorfound=1 - echo "Rueckgabewert = $retval"; - fi - fi - echo - else - echo "[Error] Erzeugter Code konnte nicht assembliert und gelinkt werden." - let errorfound=1 - fi - fi - let errnum=errnum+errorfound - if [ 1 -eq $errorfound ]; then - rm *.s - rm *.out - exit 3; - fi - rm -f a.out $RESFILE $RESFILE.s -fi diff --git a/codea/modtest b/codea/modtest deleted file mode 100755 index 8fb0018..0000000 --- a/codea/modtest +++ /dev/null @@ -1,147 +0,0 @@ -#! /bin/bash - -beispiel=codea -PROGRAM=./$beispiel - -errnum=0 -prgnum=0 - -#LOC=. -LOC=/usr/ftp/pub/ubvl/test/$beispiel -LOC2=~/test/$beispiel - -/usr/ftp/pub/ublu/test/accounttest || exit 1 -allow_null_glob_expansion=1 - -if [ ! -d ~/abgabe/$beispiel ]; then - echo "Fehler: Verzeichnis ~/abgabe/$beispiel existiert nicht." - exit 1 -else - cd ~/abgabe/$beispiel - echo 'Teste "make clean"' - make clean - /usr/ftp/pub/ubvl/test/cleantest - echo 'Teste "make"' - make -fi - -if test ! -x $PROGRAM -then - echo "Fehler: Kein Programm $PROGRAM" - exit 1 -fi -let prgnum=0 -for i in $LOC/*.0 $LOC2/*.0 -do - if [ -f $i ]; then - let prgnum=prgnum+1 - let errorfound=0 - echo "==========> Eingabe von $i:" - cat $i - echo - RESFILE=test${beispiel}out$$ - $PROGRAM <$i >$RESFILE - retval=$? - echo -n "Übersetzung: " - if test $retval -eq 0 - then - echo "Status korrekt" - else - echo "[Errot] Status=$retval. Erwartet: 0" - let errorfound=1 - fi - echo - echo "Ausgabe:" - cat $RESFILE | clr.py - mv -f $RESFILE $RESFILE.s - CALLFILE=${i%.*}.call - echo - if [ ! -f $CALLFILE ]; then - echo "Fehler: Datei $CALLFILE existiert nicht, kann Code nicht ausführen..." - exit 1 - else - echo "Übersetze und linke das Testprogramm:" - if cc -g -I. -DCALL=\"$CALLFILE\" $LOC/testmain.c $LOC/callingconvention.o $RESFILE.s; then - echo - echo "Rufe folgendes Codefragment auf:" - cat $CALLFILE - echo - ./a.out - retval=$? - # test callee saved registers - if [ "$retval" -ge 12 ] && [ "$retval" -le 15 ]; then - echo "[Error] Callee-saved register %r$retval modified." - let errorfound=1 - elif [ "$retval" -eq 11 ]; then - echo "[Error] Callee-saved register %rbx modified." - let errorfound=1 - elif [ "$retval" -eq 16 ]; then - echo "[Error] Callee-saved register %rbp modified." - let errorfound=1 - elif [ "$retval" -eq 30 ]; then - echo "[Error] Stack pointer %rsp modified." - let errorfound=1 - else - # test signals - test $retval -gt 127 - retsig=$? - test ${i##*.} = xin - expsig=$? - if test $retsig -eq $expsig; then - if test $retval -eq 1; then - echo "[Error] Das Ergebnis des Aufrufs ist falsch." - let errorfound=1 - elif test $retval -eq 0; then - echo "Das Ergebnis des Ausdrucks ist korrekt." - else - echo "[Error] Erzeugter Code verhaelt sich bzgl. Signalerzeugung anders als erwartet." - let errorfound=1 - fi - else - echo "[Error] Erzeugter Code verhaelt sich bezueglich Signalerzeugung anders als erwartet." - let errorfound=1 - echo "Rueckgabewert = $retval"; - fi - fi - echo - else - echo "[Error] Erzeugter Code konnte nicht assembliert und gelinkt werden." - let errorfound=1 - fi - fi - let errnum=errnum+errorfound - if [ 1 -eq $errorfound ]; then - rm *.s - rm *.out - exit 3; - fi - rm -f a.out $RESFILE $RESFILE.s - fi -done - -for i in $LOC/*.[123] $LOC2/*.[123] -do - if [ -f $i ]; then - let prgnum=prgnum+1 - echo "==========> Eingabe von $i:" - cat $i - echo - echo "Ausgabe:" - $PROGRAM <$i - retval=$? - if test $retval -eq ${i#*.} - then - echo "Status: korrekt" - else - echo "[Error] Status: $retval. Erwartet: ${i#*.}" - let errnum=errnum+1 - fi - echo -fi -done -let corrnum=prgnum-errnum -echo "Statistics: " -echo "===========" -echo " $prgnum Tests total" -echo " $corrnum Tests passed" -echo " $errnum Tests failed" -- 2.25.1