X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=tests%2Fovsdb.at;h=3e9918ab4a024414b5dae7562f7b76f7ff226ca7;hb=4816a18f33380a33d381b77d41df39113c94500d;hp=1ee9c03785b3d37c3ba722bc10c9daf107e6a993;hpb=a0bc29a541fc7dc6e20137d5558e2094d614e6ab;p=sliver-openvswitch.git diff --git a/tests/ovsdb.at b/tests/ovsdb.at index 1ee9c0378..3e9918ab4 100644 --- a/tests/ovsdb.at +++ b/tests/ovsdb.at @@ -11,6 +11,33 @@ m4_define([OVSDB_CHECK_POSITIVE], ], []) AT_CLEANUP]) +# OVSDB_CHECK_POSITIVE_PY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ], +# [PY-CHECK]) +# +# Runs "test-ovsdb.py TEST-OVSDB-ARGS" and checks that it exits with +# status 0 and prints OUTPUT on stdout. +# +# PY-CHECK is expanded before the check. It can check for features of the +# Python implementation that are required for the test to pass. +# +# TITLE is provided to AT_SETUP and KEYWORDS to AT_KEYWORDS. +m4_define([OVSDB_CHECK_POSITIVE_PY], + [AT_SETUP([$1]) + AT_SKIP_IF([test $HAVE_PYTHON = no]) + $6 + AT_KEYWORDS([ovsdb positive Python $4]) + AT_CHECK([$PYTHON $srcdir/test-ovsdb.py $2], [0], [$3 +], []) + AT_CLEANUP]) + +# OVSDB_CHECK_POSITIVE_CPY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], +# [PREREQ], [PY-CHECK]) +# +# Runs identical C and Python tests, as specified. +m4_define([OVSDB_CHECK_POSITIVE_CPY], + [OVSDB_CHECK_POSITIVE([$1 - C], [$2], [$3], [$4], [$5]) + OVSDB_CHECK_POSITIVE_PY([$1 - Python], [$2], [$3], [$4], [$5], [$6])]) + # OVSDB_CHECK_NEGATIVE(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ]) # # Runs "test-ovsdb TEST-OVSDB-ARGS" and checks that it exits with @@ -31,6 +58,35 @@ m4_define([OVSDB_CHECK_NEGATIVE], [0], [ignore], [ignore]) AT_CLEANUP]) +# OVSDB_CHECK_NEGATIVE_PY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ]) +# +# Runs "test-ovsdb TEST-OVSDB-ARGS" and checks that it exits with +# status 1 and that its output on stdout contains substring OUTPUT. +# TITLE is provided to AT_SETUP and KEYWORDS to AT_KEYWORDS. +m4_define([OVSDB_CHECK_NEGATIVE_PY], + [AT_SETUP([$1]) + AT_SKIP_IF([test $HAVE_PYTHON = no]) + AT_KEYWORDS([ovsdb negative $4]) + AT_CHECK([$PYTHON $srcdir/test-ovsdb.py $2], [1], [], [stderr]) + m4_assert(m4_len([$3])) + AT_CHECK( + [if grep -F -e "AS_ESCAPE([$3])" stderr + then + : + else + exit 99 + fi], + [0], [ignore], [ignore]) + AT_CLEANUP]) + +# OVSDB_CHECK_NEGATIVE_CPY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], +# [PREREQ]) +# +# Runs identical C and Python tests, as specified. +m4_define([OVSDB_CHECK_NEGATIVE_CPY], + [OVSDB_CHECK_NEGATIVE([$1 - C], [$2], [$3], [$4], [$5]) + OVSDB_CHECK_NEGATIVE_PY([$1 - Python], [$2], [$3], [$4], [$5])]) + m4_include([tests/ovsdb-log.at]) m4_include([tests/ovsdb-types.at]) m4_include([tests/ovsdb-data.at])