diff --git a/obn-run-tests.sh b/obn-run-tests.sh
index da13a65b4dd5b8f39e4294220dcb57a9257d4a01..8db6f37b203c5a6c9733df4dc90f79b6dc0f8e2e 100755 (executable)
--- a/obn-run-tests.sh
+++ b/obn-run-tests.sh
set -e
set -e
+TEST_DIR=tests
+
+# Тест: компиляция и исполнение
maketest()
{
local OK=1
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 -I $TEST_DIR $1)"; then
+ OK=0;
+ echo "=============================="
+ echo "Test fail: $1 compile-time $?:"
+ echo "$LOG"
+ echo "=============================="
+ echo
fi
if [ $OK = 1 ]; then
if ! ./obn-run.sh $1; then
fi
if [ $OK = 1 ]; then
if ! ./obn-run.sh $1; then
- OK=0; echo "Test fail: $1 run-time $?"
+ OK=0
fi
fi
if [ $OK = 1 ]; then
fi
fi
if [ $OK = 1 ]; then
fi
}
fi
}
-compile_false_positive()
+# Тест: только компиляция
+makecomp()
{
{
- if ./obn-compile.sh $1; then
- echo "Test fail: $1 compile-time $?"
+ local LOG=""
+ if ! LOG="$(./obn-compile.sh -I $TEST_DIR $1)"; then
+ echo "=============================="
+ echo "Test fail: $1 compile-time $?:"
+ echo "$LOG"
+ echo "=============================="
+ echo
else
echo "Test ok: $1"
fi
else
echo "Test ok: $1"
fi
+
+}
+
+# Тест: Компиляция не должна проходить
+makefail()
+{
+ local LOG=""
+ if ! LOG="$(./obn-compile.sh -I $TEST_DIR $1)"; then
+ echo "Test ok: $1"
+ else
+ echo "=============================="
+ echo "Test fail: $1 compile-time $?:"
+ echo "$LOG"
+ echo "=============================="
+ echo
+ fi
}
./make.sh jvm
}
./make.sh jvm
maketest Test7
maketest Test8
maketest Test9
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
+maketest Test21
+maketest Test22
+
+makecomp Test23A
+makefail Test23B
+
+maketest Test24
+maketest Test25
+maketest Test26
+maketest Test27
+maketest Test28