m4_define([OVSDB_CHECK_IDL_PYN],
[AT_SETUP([$1])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python $5])
AT_CHECK([ovsdb_start_idltest])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema unix:socket $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema unix:socket $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_PY],
- [OVSDB_CHECK_IDL_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
m4_define([OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN],
[AT_SETUP([$1 - register_columns])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python register_columns $5])
AT_CHECK([ovsdb_start_idltest])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema unix:socket ?simple:b,ba,i,ia,r,ra,s,sa,u,ua?link1:i,k,ka,l2?link2:i,l1?singleton:name $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema unix:socket ?simple:b,ba,i,ia,r,ra,s,sa,u,ua?link1:i,k,ka,l2?link2:i,l1?singleton:name $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_REGISTER_COLUMNS_PY],
- [OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_REGISTER_COLUMNS_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
# same as OVSDB_CHECK_IDL but uses the Python IDL implementation with tcp
m4_define([OVSDB_CHECK_IDL_TCP_PYN],
[AT_SETUP([$1 - tcp])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with tcp socket $5])
AT_CHECK([ovsdb_start_idltest "ptcp:0:127.0.0.1"])
PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact tcp:127.0.0.1:$TCP_PORT $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema tcp:127.0.0.1:$TCP_PORT $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema tcp:127.0.0.1:$TCP_PORT $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_TCP_PY],
- [OVSDB_CHECK_IDL_TCP_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_TCP_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_TCP_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_TCP_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_TCP_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_TCP_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
# same as OVSDB_CHECK_IDL but uses the Python IDL implementation with tcp
# with multiple remotes with only one remote reachable
m4_define([OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN],
[AT_SETUP([$1 - tcp])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with tcp socket $5])
AT_CHECK([ovsdb_start_idltest "ptcp:0:127.0.0.1"])
PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
remote=tcp:127.0.0.1:$WRONG_PORT_1,tcp:127.0.0.1:$TCP_PORT,tcp:127.0.0.1:$WRONG_PORT_2
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact tcp:127.0.0.1:$TCP_PORT $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema $remote $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema $remote $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PY],
- [OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python2 (multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python2 (pyjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON], [$PYTHON])
- OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python3 (multiple remotes)], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python2 (cjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON], [$PYTHON], C)
+ OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python3 (pyjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_TCP_MULTIPLE_REMOTES_PYN([$1 - Python3 (cjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
# same as OVSDB_CHECK_IDL but uses the Python IDL implementation with tcp6
m4_define([OVSDB_CHECK_IDL_TCP6_PYN],
AT_SKIP_IF([test $7 = no])
AT_SKIP_IF([test "$IS_WIN32" = "yes"])
AT_SKIP_IF([test $HAVE_IPV6 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with tcp6 socket $5])
AT_CHECK([ovsdb_start_idltest "ptcp:0:[[::1]]"])
PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact "tcp:[[::1]]:$TCP_PORT" $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema tcp:[[::1]]:$TCP_PORT $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema tcp:[[::1]]:$TCP_PORT $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_TCP6_PY],
- [OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_TCP6_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
m4_define([OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN],
[AT_SETUP([$1 - tcp6])
AT_SKIP_IF([test $7 = no])
AT_SKIP_IF([test "$IS_WIN32" = "yes"])
AT_SKIP_IF([test $HAVE_IPV6 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with tcp6 socket $5])
AT_CHECK([ovsdb_start_idltest "ptcp:0:[[::1]]"])
PARSE_LISTENING_PORT([ovsdb-server.log], [TCP_PORT])
remote="tcp:[[::1]]:$WRONG_PORT_1,tcp:[[::1]]:$TCP_PORT,tcp:[[::1]]:$WRONG_PORT_2"
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact "tcp:[[::1]]:$TCP_PORT" $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema $remote $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema $remote $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PY],
- [OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python2 (multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python2 (pyjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON], [$PYTHON])
- OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python3 (multiple remotes)], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python2 (cjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON], [$PYTHON], C)
+ OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python3 (pyjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_TCP6_MULTIPLE_REMOTES_PYN([$1 - Python3 (cjson multiple remotes)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
# same as OVSDB_CHECK_IDL but uses the Python IDL implementation with SSL
m4_define([OVSDB_CHECK_IDL_SSL_PYN],
$8 -c "import OpenSSL.SSL"
SSL_PRESENT=$?
AT_SKIP_IF([test $SSL_PRESENT != 0])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with ssl socket $5])
AT_CHECK([ovsdb-tool create db $abs_srcdir/idltest.ovsschema],
[0], [stdout], [ignore])
--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 \
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -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_CLEANUP])
m4_define([OVSDB_CHECK_IDL_SSL_PY],
- [OVSDB_CHECK_IDL_SSL_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_SSL_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON], [$PYTHON])
- OVSDB_CHECK_IDL_SSL_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_SSL_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON], [$PYTHON], C)
+ OVSDB_CHECK_IDL_SSL_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_SSL_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
m4_define([OVSDB_CHECK_IDL],
[OVSDB_CHECK_IDL_C($@)
m4_define([OVSDB_CHECK_IDL_PASSIVE_TCP_PYN],
[AT_SETUP([$1 ptcp])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python with tcp socket $5])
# find free TCP port
AT_CHECK([ovsdb_start_idltest "ptcp:0:127.0.0.1"])
# start OVSDB server in passive mode
AT_CHECK([ovsdb_start_idltest "tcp:127.0.0.1:$TCP_PORT"])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl_passive $srcdir/idltest.ovsschema ptcp:127.0.0.1:$TCP_PORT $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl_passive $srcdir/idltest.ovsschema ptcp:127.0.0.1:$TCP_PORT $3],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
[0], [$4])
])
m4_define([OVSDB_CHECK_IDL_PASSIVE_TCP_PY],
- [OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_PASSIVE_TCP_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
OVSDB_CHECK_IDL_PASSIVE_TCP_PY([simple passive idl, initially empty, select empty],
[],
m4_define([OVSDB_CHECK_IDL_PYN_WITH_EXPOUT],
[AT_SETUP([$1])
AT_SKIP_IF([test $7 = no])
+ AT_SKIP_IF([test $9 = C && ! $8 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python $5])
AT_CHECK([ovsdb_start_idltest])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore])])
- AT_CHECK([$8 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema unix:socket $3],
+ AT_CHECK([$8 $srcdir/test-ovsdb.py -j m4_default([$9], python) -t10 idl $srcdir/idltest.ovsschema unix:socket $3],
[0], [stdout], [ignore])
echo "$4" > expout
AT_CHECK([sort stdout | uuidfilt]m4_if([$6],,, [[| $6]]),
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_PY_WITH_EXPOUT],
- [OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python2], [$2], [$3], [$4], [$5], [$6],
+ [OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python3], [$2], [$3], [$4], [$5], [$6],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_PYN_WITH_EXPOUT([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
OVSDB_CHECK_IDL_PY_WITH_EXPOUT([simple idl, writing large data via IDL with unicode],
[['["idltest",
m4_define([OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN],
[AT_SETUP([$1 fetch])
AT_SKIP_IF([test $8 = no])
+ AT_SKIP_IF([test $10 = C && ! $9 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl positive Python increment fetch $6])
AT_CHECK([ovsdb_start_idltest])
m4_if([$2], [], [],
[AT_CHECK([ovsdb-client transact unix:socket $2], [0], [ignore], [ignore])])
- AT_CHECK([$9 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema unix:socket [$3] $4],
+ AT_CHECK([$9 $srcdir/test-ovsdb.py -j m4_default([$10], python) -t10 idl $srcdir/idltest.ovsschema unix:socket [$3] $4],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$7],,, [[| $7]]),
[0], [$5])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_FETCH_COLUMNS_PY],
- [OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python2], [$2], [$3], [$4], [$5], [$6], [$7],
+ [OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6], [$7],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python3], [$2], [$3], [$4], [$5], [$6], [$7],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6], [$7],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$6], [$7],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_FETCH_COLUMNS_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$6], [$7],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
m4_define([OVSDB_CHECK_IDL_FETCH_COLUMNS],
[OVSDB_CHECK_IDL_FETCH_COLUMNS_PY($@)])
m4_define([OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN],
[AT_SETUP([$1])
AT_SKIP_IF([test $6 = no])
+ AT_SKIP_IF([test $8 = C && ! $7 -c "import ovs._json" 2>/dev/null])
AT_KEYWORDS([ovsdb server idl Python monitor $4])
AT_CHECK([ovsdb_start_idltest])
AT_CHECK([ovs-appctl -t ovsdb-server ovsdb-server/disable-monitor-cond])
- AT_CHECK([$7 $srcdir/test-ovsdb.py -t10 idl $srcdir/idltest.ovsschema unix:socket $2],
+ AT_CHECK([$7 $srcdir/test-ovsdb.py -j m4_default([$8], python) -t10 idl $srcdir/idltest.ovsschema unix:socket $2],
[0], [stdout], [ignore])
AT_CHECK([sort stdout | uuidfilt]m4_if([$5],,, [[| $5]]),
[0], [$3])
AT_CLEANUP])
m4_define([OVSDB_CHECK_IDL_WO_MONITOR_COND_PY],
- [OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python2], [$2], [$3], [$4], [$5],
+ [OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5],
[$HAVE_PYTHON2], [$PYTHON2])
- OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python3], [$2], [$3], [$4], [$5],
- [$HAVE_PYTHON3], [$PYTHON3])])
+ OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python2(cjson)], [$2], [$3], [$4], [$5],
+ [$HAVE_PYTHON2], [$PYTHON2], C)
+ OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5],
+ [$HAVE_PYTHON3], [$PYTHON3])
+ OVSDB_CHECK_IDL_WO_MONITOR_COND_PYN([$1 - Python3(cjson)], [$2], [$3], [$4], [$5],
+ [$HAVE_PYTHON3], [$PYTHON3], C)])
m4_define([OVSDB_CHECK_IDL_WO_MONITOR_COND],
]])
m4_define([OVSDB_CHECK_IDL_NOTIFY_PYN],
- [OVSDB_CHECK_IDL_PYN([$1], [], [$2], [$3], [notify $4], [$5], [$6], [$7])])
+ [OVSDB_CHECK_IDL_PYN([$1(pyjson)], [], [$2], [$3], [notify $4], [$5], [$6], [$7])
+ OVSDB_CHECK_IDL_PYN([$1(cjson)], [], [$2], [$3], [notify $4], [$5], [$6], [$7], C)])
m4_define([OVSDB_CHECK_IDL_NOTIFY_PY],
[OVSDB_CHECK_IDL_NOTIFY_PYN([$1 - Python2], [$2], [$3], [$4], [$5],
# This test uses the Python IDL implementation with ssl
m4_define([OVSDB_CHECK_IDL_NOTIFY_SSL_PYN],
- [OVSDB_CHECK_IDL_SSL_PYN([$1], [], [$2], [$3], [notify $4], [$5], [$6], [$7])])
+ [OVSDB_CHECK_IDL_SSL_PYN([$1(pyjson)], [], [$2], [$3], [notify $4], [$5], [$6], [$7])
+ OVSDB_CHECK_IDL_SSL_PYN([$1(cjson)], [], [$2], [$3], [notify $4], [$5], [$6], [$7], C)])
m4_define([OVSDB_CHECK_IDL_NOTIFY_SSL_PY],
[OVSDB_CHECK_IDL_NOTIFY_SSL_PYN([$1 - Python2], [$2], [$3], [$4], [$5],
AT_CLEANUP])
# OVSDB_CHECK_POSITIVE_PY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ],
-# [PY-CHECK])
+# [PY-CHECK] [JSON-PARSER = python])
#
# Runs "test-ovsdb.py TEST-OVSDB-ARGS" and checks that it exits with
# status 0 and prints OUTPUT on stdout.
m4_define([OVSDB_CHECK_POSITIVE_PY],
[AT_SETUP([$1])
AT_SKIP_IF([test $HAVE_PYTHON2 = no])
+ AT_SKIP_IF([test $7 = C && ! $PYTHON2 -c "import ovs._json" 2>/dev/null])
$6
AT_KEYWORDS([ovsdb positive Python $4])
- AT_CHECK([$PYTHON2 $srcdir/test-ovsdb.py $2], [0], [$3
+ AT_CHECK([$PYTHON2 $srcdir/test-ovsdb.py -j m4_default([$7], python) $2], [0], [$3
], [])
AT_CLEANUP])
# OVSDB_CHECK_POSITIVE_PY3(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ],
-# [PY-CHECK])
+# [PY-CHECK] [PY3-CHECK] [JSON-PARSER = python])
#
# Runs "test-ovsdb.py TEST-OVSDB-ARGS" and checks that it exits with
# status 0 and prints OUTPUT on stdout.
m4_define([OVSDB_CHECK_POSITIVE_PY3],
[AT_SETUP([$1])
AT_SKIP_IF([test $HAVE_PYTHON3 = no])
+ AT_SKIP_IF([test $8 = C && ! $PYTHON3 -c "import ovs._json" 2>/dev/null])
$6
AT_KEYWORDS([ovsdb positive Python $4])
- AT_CHECK([$PYTHON3 $srcdir/test-ovsdb.py $2], [0], [$3
+ AT_CHECK([$PYTHON3 $srcdir/test-ovsdb.py -j m4_default([$8], python) $2], [0], [$3
], [])
AT_CLEANUP])
# 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 - Python2], [$2], [$3], [$4], [$5], [$6])
- OVSDB_CHECK_POSITIVE_PY3([$1 - Python3], [$2], [$3], [$4], [$5], [$7])])
+ OVSDB_CHECK_POSITIVE_PY([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5], [$6])
+ OVSDB_CHECK_POSITIVE_PY([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], [$6], C)
+ OVSDB_CHECK_POSITIVE_PY3([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5], [$7])
+ OVSDB_CHECK_POSITIVE_PY3([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], [$7], C)])
# OVSDB_CHECK_NEGATIVE(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ])
#
[0], [ignore], [ignore])
AT_CLEANUP])
-# OVSDB_CHECK_NEGATIVE_PY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ])
+# OVSDB_CHECK_NEGATIVE_PY(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ] [JSON-PARSER = python])
#
# Runs "test-ovsdb TEST-OVSDB-ARGS" and checks that it exits with
# status 1 and that its output on stdout contains substring OUTPUT.
m4_define([OVSDB_CHECK_NEGATIVE_PY],
[AT_SETUP([$1])
AT_SKIP_IF([test $HAVE_PYTHON2 = no])
- AT_KEYWORDS([ovsdb negative $4])
- AT_CHECK([$PYTHON2 $srcdir/test-ovsdb.py $2], [1], [], [stderr])
+ AT_SKIP_IF([test $6 = C && ! $PYTHON2 -c "import ovs._json" 2>/dev/null])
+ AT_KEYWORDS([ovsdb negative Python $4])
+ AT_CHECK([$PYTHON2 $srcdir/test-ovsdb.py -j m4_default([$6], python) $2], [1], [], [stderr])
m4_assert(m4_len([$3]))
AT_CHECK(
[if grep -F -e "AS_ESCAPE([$3])" stderr
[0], [ignore], [ignore])
AT_CLEANUP])
-# OVSDB_CHECK_NEGATIVE_PY3(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ])
+# OVSDB_CHECK_NEGATIVE_PY3(TITLE, TEST-OVSDB-ARGS, OUTPUT, [KEYWORDS], [PREREQ], [JSON-PARSER = python])
#
# Runs "test-ovsdb TEST-OVSDB-ARGS" and checks that it exits with
# status 1 and that its output on stdout contains substring OUTPUT.
m4_define([OVSDB_CHECK_NEGATIVE_PY],
[AT_SETUP([$1])
AT_SKIP_IF([test $HAVE_PYTHON3 = no])
- AT_KEYWORDS([ovsdb negative $4])
- AT_CHECK([$PYTHON3 $srcdir/test-ovsdb.py $2], [1], [], [stderr])
+ AT_SKIP_IF([test $6 = C && ! $PYTHON3 -c "import ovs._json" 2>/dev/null])
+ AT_KEYWORDS([ovsdb negative Python $4])
+ AT_CHECK([$PYTHON3 $srcdir/test-ovsdb.py -j m4_default([$6], python) $2], [1], [], [stderr])
m4_assert(m4_len([$3]))
AT_CHECK(
[if grep -F -e "AS_ESCAPE([$3])" stderr
# 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 - Python2], [$2], [$3], [$4], [$5])
- OVSDB_CHECK_NEGATIVE_PY3([$1 - Python3], [$2], [$3], [$4], [$5])])
+ OVSDB_CHECK_NEGATIVE_PY([$1 - Python2(pyjson)], [$2], [$3], [$4], [$5])
+ OVSDB_CHECK_NEGATIVE_PY([$1 - Python2(cjson)], [$2], [$3], [$4], [$5], C)
+ OVSDB_CHECK_NEGATIVE_PY3([$1 - Python3(pyjson)], [$2], [$3], [$4], [$5])
+ OVSDB_CHECK_NEGATIVE_PY3([$1 - Python3(cjson)], [$2], [$3], [$4], [$5], C)])
OVS_START_SHELL_HELPERS
ovsdb_client_wait() {