X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=tests%2Fovsdb.at;h=3e9918ab4a024414b5dae7562f7b76f7ff226ca7;hb=c5cf10598f8c9f4428291e9df3ecd72a05fb1ccf;hp=1ee9c03785b3d37c3ba722bc10c9daf107e6a993;hpb=5f55c39b21e69025045437ffbd3bb98fe6ce2e89;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])