diff options
author | Anton Luka Šijanec <anton@sijanec.eu> | 2023-12-19 23:47:39 +0100 |
---|---|---|
committer | Anton Luka Šijanec <anton@sijanec.eu> | 2023-12-19 23:47:39 +0100 |
commit | 9b8d284981fa0e0a3b4634fec9ae58b04ac10450 (patch) | |
tree | dc5e832547cd994dc2fdf3d7ec93065e3c35bac9 /šola/p1/dn/tj.sh | |
parent | šola (diff) | |
download | r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar.gz r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar.bz2 r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar.lz r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar.xz r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.tar.zst r-9b8d284981fa0e0a3b4634fec9ae58b04ac10450.zip |
Diffstat (limited to 'šola/p1/dn/tj.sh')
-rwxr-xr-x | šola/p1/dn/tj.sh | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/šola/p1/dn/tj.sh b/šola/p1/dn/tj.sh index 908f082..4851ec6 100755 --- a/šola/p1/dn/tj.sh +++ b/šola/p1/dn/tj.sh @@ -6,7 +6,8 @@ d=$3 uspelih=0 napa=0 predolg=0 -find $2 -name '*.java' -or -name '*.in' | while read -r f +ura=10s +find $2 -name 'Test[0-9]*.java' -or -name '*.in' | while read -r f do echo -n "$f ... " uspeh=0 @@ -16,21 +17,31 @@ do else stdout=`echo <(java $1 < $f)` fi - out=$(timeout 5s /usr/bin/time --quiet -f %E diff --ignore-trailing-space --side-by-side <(java `grep 'java$' <<<$f > /dev/null && echo $f || echo $1` <$f) `sed -e s/in$/out/ -e 's/Test\([0-9]\)/test\1/' -e s/java$/out/ <<<$f` 2>&1) && uspeh=1 + out=$(timeout $ura /usr/bin/time --quiet -f %E diff --ignore-trailing-space --side-by-side <(java `grep 'java$' <<<$f > /dev/null && echo $f || echo $1` <$f) `sed -e s/in$/out/ -e 's/Test\([0-9]\)/test\1/' -e s/java$/out/ <<<$f` 2>&1) && uspeh=1 koda=$? if [ $uspeh -eq 0 ] then if [ $koda -eq 124 ] then predolg=$(($predolg+1)) - echo "PREKORAČEN ČAS 5s!" - echo "VHOD:" - tac $f | tac + echo "PREKORAČEN ČAS $ura!" + if grep 'java$' <<<$f > /dev/null + then + true + else + echo "VHOD:" + tac $f | tac + fi else napa=$(($napa+1)) echo "NAPAČEN IZHOD! Čas izvajanja: `tail -n1 <<<$out`" - echo "VHOD:" - tac $f | tac + if grep 'java$' <<<$f > /dev/null + then + true + else + echo "VHOD:" + tac $f | tac + fi echo "IZHOD: Levo je vaš izhod, desno je pravilen izhod:" head -n-1 <<<$out grep 'java$' <<<$f > /dev/null && echo -e "PRIPOROČILO: Če DN zahteva razrede (kot recimo DN06), morate imeti v trenutnem direktoriju PREVEDENE .class datoteke vaših zahtevanih razredov. Če so v katerem drugem direktoriju, morate nastaviti CLASSPATH.\nPoleg tega se lahko zgodi, da v direktoriju s testi obstaja TestSkupno.java (kot recimo DN07), ki ga je potrebno prevesti v z javac." @@ -42,4 +53,4 @@ do done echo "uspešnih testov: $uspelih" echo "napačnih izhodov: $napa" -echo "prekoračen čas 5s: $predolg" +echo "prekoračen čas $ura: $predolg" |