summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/ovsdb-idl.at71
1 files changed, 44 insertions, 27 deletions
diff --git a/tests/ovsdb-idl.at b/tests/ovsdb-idl.at
index 9a93bbb0e..9caa02aad 100644
--- a/tests/ovsdb-idl.at
+++ b/tests/ovsdb-idl.at
@@ -132,12 +132,54 @@ m4_define([OVSDB_CHECK_IDL_TCP6_PY],
OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON3], [$PYTHON3])])
+# same as OVSDB_CHECK_IDL but uses the Python IDL implementation with SSL
+m4_define([OVSDB_CHECK_IDL_SSL_PYN],
+ [AT_SETUP([$1 - SSL])
+ AT_SKIP_IF([test "$HAVE_OPENSSL" = no])
+ AT_SKIP_IF([test $7 = no])
+ $8 -c "import OpenSSL.SSL"
+ SSL_PRESENT=$?
+ AT_SKIP_IF([test $SSL_PRESENT != 0])
+ AT_KEYWORDS([ovsdb server idl positive Python with ssl socket $5])
+ AT_CHECK([ovsdb-tool create db $abs_srcdir/idltest.ovsschema],
+ [0], [stdout], [ignore])
+ PKIDIR=$abs_top_builddir/tests
+ AT_CHECK([ovsdb-server -vconsole:warn --log-file --detach --no-chdir \
+ --pidfile \
+ --private-key=$PKIDIR/testpki-privkey2.pem \
+ --certificate=$PKIDIR/testpki-cert2.pem \
+ --ca-cert=$PKIDIR/testpki-cacert.pem \
+ --remote=pssl:0:127.0.0.1 db])
+ on_exit 'kill `cat ovsdb-server.pid`'
+ PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
+ m4_if([$2], [], [],
+ [AT_CHECK([ovsdb-client \
+ --private-key=$PKIDIR/testpki-privkey2.pem \
+ --certificate=$PKIDIR/testpki-cert2.pem \
+ --ca-cert=$PKIDIR/testpki-cacert.pem \
+ transact "ssl:127.0.0.1:$TCP_PORT" $2], [0], [ignore], [ignore])])
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema \
+ ssl:127.0.0.1:$TCP_PORT $PKIDIR/testpki-privkey.pem \
+ $PKIDIR/testpki-cert.pem $PKIDIR/testpki-cacert.pem $3],
+ [0], [stdout], [ignore])
+ AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
+ [0], [$4])
+ OVSDB_SERVER_SHUTDOWN
+ AT_CLEANUP])
+
+m4_define([OVSDB_CHECK_IDL_SSL_PY],
+ [OVSDB_CHECK_IDL_SSL_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON], [$PYTHON])
+ OVSDB_CHECK_IDL_SSL_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])])
+
m4_define([OVSDB_CHECK_IDL],
[OVSDB_CHECK_IDL_C($@)
OVSDB_CHECK_IDL_PY($@)
OVSDB_CHECK_IDL_REGISTER_COLUMNS_PY($@)
OVSDB_CHECK_IDL_TCP_PY($@)
- OVSDB_CHECK_IDL_TCP6_PY($@)])
+ OVSDB_CHECK_IDL_TCP6_PY($@)
+ OVSDB_CHECK_IDL_SSL_PY($@)])
# This test uses the Python IDL implementation with passive tcp
m4_define([OVSDB_CHECK_IDL_PASSIVE_TCP_PYN],
@@ -1243,32 +1285,7 @@ m4_define([OVSDB_CHECK_IDL_NOTIFY_PY],
# This test uses the Python IDL implementation with ssl
m4_define([OVSDB_CHECK_IDL_NOTIFY_SSL_PYN],
- [AT_SETUP([$1 - SSL])
- AT_SKIP_IF([test "$HAVE_OPENSSL" = no])
- AT_SKIP_IF([test $6 = no])
- $7 -c "import OpenSSL.SSL"
- SSL_PRESENT=$?
- AT_SKIP_IF([test $SSL_PRESENT != 0])
- AT_KEYWORDS([ovsdb server idl Python notify - ssl socket])
- AT_CHECK([ovsdb-tool create db $abs_srcdir/idltest.ovsschema],
- [0], [stdout], [ignore])
- PKIDIR=$abs_top_builddir/tests
- AT_CHECK([ovsdb-server -vconsole:warn --log-file --detach --no-chdir \
- --pidfile \
- --private-key=$PKIDIR/testpki-privkey2.pem \
- --certificate=$PKIDIR/testpki-cert2.pem \
- --ca-cert=$PKIDIR/testpki-cacert.pem \
- --remote=pssl:0:127.0.0.1 db])
- on_exit 'kill `cat ovsdb-server.pid`'
- PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
- AT_CHECK([$7 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema \
- ssl:127.0.0.1:$TCP_PORT $PKIDIR/testpki-privkey.pem \
- $PKIDIR/testpki-cert.pem $PKIDIR/testpki-cacert.pem $2],
- [0], [stdout], [ignore])
- AT_CHECK([sort stdout | uuidfilt]m4_if([$5],,, [[| $5]]),
- [0], [$3])
- OVSDB_SERVER_SHUTDOWN
- AT_CLEANUP])
+ [OVSDB_CHECK_IDL_SSL_PYN([$1], [], [$2], [$3], [notify $4], [$5], [$6], [$7])])
m4_define([OVSDB_CHECK_IDL_NOTIFY_SSL_PY],
[OVSDB_CHECK_IDL_NOTIFY_SSL_PYN([$1 - Python2], [$2], [$3], [$4], [$5],