X-Git-Url: https://deadsoftware.ru/gitweb?a=blobdiff_plain;f=obn-run-tests.sh;h=fa1d728f373bbc133344fd14886982b2cdb21fe1;hb=f226da0f861c2dbf26d3851fbe47794b21a92a25;hp=d809c75a049eba6821cf82b0fbe0a4ef2be4e278;hpb=9f8036eb00032fa7f756113365cb42e05ab262df;p=dsw-obn.git diff --git a/obn-run-tests.sh b/obn-run-tests.sh index d809c75..fa1d728 100755 --- a/obn-run-tests.sh +++ b/obn-run-tests.sh @@ -2,27 +2,63 @@ set -e +# Тест: компиляция и исполнение maketest() { local OK=1 - if ! ./obn-compile.sh $1; then - OK=0; echo "Test fail: $1 compile-time $?" + local LOG="" + if ! LOG="$(./obn-compile.sh $1)"; then + OK=0; + echo "==============================" + echo "Test fail: $1 compile-time $?:" + echo "$LOG" + echo "==============================" + echo fi - if ! ./obn-run.sh $1; then - OK=0; echo "Test fail: $1 run-time $?" + if [ $OK = 1 ]; then + if ! ./obn-run.sh $1; then + OK=0 + echo "==============================" + echo "Test fail: $1 run-time $?:" + echo "$LOG" + echo "==============================" + echo + fi fi - if [ $OK ]; then + if [ $OK = 1 ]; then echo "Test ok: $1" fi } -compile_false_positive() +# Тест: только компиляция +makecomp() { - if ./obn-compile.sh $1; then - echo "Test fail: $1 compile-time $?" + local LOG="" + if ! LOG="$(./obn-compile.sh $1)"; then + echo "==============================" + echo "Test fail: $1 compile-time $?:" + echo "$LOG" + echo "==============================" + echo else echo "Test ok: $1" fi + +} + +# Тест: Компиляция не должна проходить +makefail() +{ + local LOG="" + if ! LOG="$(./obn-compile.sh $1)"; then + echo "Test ok: $1" + else + echo "==============================" + echo "Test fail: $1 compile-time $?:" + echo "$LOG" + echo "==============================" + echo + fi } ./make.sh jvm @@ -33,3 +69,27 @@ maketest Test3 maketest Test4 maketest Test5 maketest Test6 +maketest Test7 +maketest Test8 +maketest Test9 +maketest Test10 +maketest Test11 +maketest Test12 +maketest Test13 +maketest Test14 +maketest Test15 +maketest Test16 + +makefail Test17A +makefail Test17B +makecomp Test17C +makecomp Test17D +makefail Test17E +makefail Test17F + +makecomp Test18A +makefail Test18B +makefail Test18C + +maketest Test19 +maketest Test20