mirror of
https://github.com/zeromq/libzmq.git
synced 2024-12-12 18:40:27 +01:00
z/OS: Autodetect tests to run
Updated: builds/zos/runtests: Extract tests to run from tests/Makefile.am at runtime, rather than hard coding tests list (to simplfy later maintenance). test_*_tipc is excluded as BUILD_TIPC is not defined on z/OS UNIX System Services. XFAIL_TESTS are also excluded, following current logic in tests/Makefile.am
This commit is contained in:
parent
9d4f719e94
commit
b27bafff60
114
builds/zos/runtests
Executable file → Normal file
114
builds/zos/runtests
Executable file → Normal file
@ -7,81 +7,11 @@
|
|||||||
# defines the order in which tests are run.
|
# defines the order in which tests are run.
|
||||||
#
|
#
|
||||||
# Written by Ewen McNeill <ewen@imatix.com>, 2014-07-19
|
# Written by Ewen McNeill <ewen@imatix.com>, 2014-07-19
|
||||||
# Updated by Ewen McNeill <ewen@imatix.com>, 2014-07-22
|
# Updated by Ewen McNeill <ewen@imatix.com>, 2014-07-24
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
|
|
||||||
set -e # Stop if a test fails
|
set -e # Stop if a test fails
|
||||||
|
|
||||||
# Test order taken from tests/Makefile.am
|
|
||||||
noinst_PROGRAMS="test_system
|
|
||||||
test_pair_inproc
|
|
||||||
test_pair_tcp
|
|
||||||
test_reqrep_inproc
|
|
||||||
test_reqrep_tcp
|
|
||||||
test_hwm
|
|
||||||
test_reqrep_device
|
|
||||||
test_sub_forward
|
|
||||||
test_invalid_rep
|
|
||||||
test_msg_flags
|
|
||||||
test_connect_resolve
|
|
||||||
test_immediate
|
|
||||||
test_last_endpoint
|
|
||||||
test_term_endpoint
|
|
||||||
test_monitor
|
|
||||||
test_router_mandatory
|
|
||||||
test_router_raw_empty
|
|
||||||
test_probe_router
|
|
||||||
test_stream
|
|
||||||
test_disconnect_inproc
|
|
||||||
test_ctx_options
|
|
||||||
test_ctx_destroy
|
|
||||||
test_security_null
|
|
||||||
test_security_plain
|
|
||||||
test_security_curve
|
|
||||||
test_iov
|
|
||||||
test_spec_req
|
|
||||||
test_spec_rep
|
|
||||||
test_spec_dealer
|
|
||||||
test_spec_router
|
|
||||||
test_spec_pushpull
|
|
||||||
test_req_correlate
|
|
||||||
test_req_relaxed
|
|
||||||
test_conflate
|
|
||||||
test_inproc_connect
|
|
||||||
test_issue_566
|
|
||||||
test_abstract_ipc
|
|
||||||
test_many_sockets
|
|
||||||
test_shutdown_stress
|
|
||||||
test_pair_ipc
|
|
||||||
test_reqrep_ipc
|
|
||||||
test_timeo
|
|
||||||
test_fork"
|
|
||||||
|
|
||||||
if [ -n "${1}" ]; then
|
|
||||||
TESTS="$*" # Run tests on command line
|
|
||||||
else
|
|
||||||
TESTS="${noinst_PROGRAMS}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Explanation of tests expected to fail:
|
|
||||||
# test_abstract_ipc: Relies on Linux-specific IPC functionality
|
|
||||||
# test_fork: Relies on using pthreads _after_ fork, _before_ exec
|
|
||||||
#
|
|
||||||
# (Note: there _must_ be spaces either side of the tests names to match)
|
|
||||||
XFAIL_TESTS="
|
|
||||||
test_abstract_ipc
|
|
||||||
test_fork
|
|
||||||
"
|
|
||||||
|
|
||||||
verbose() {
|
|
||||||
echo "Starting: $@" >&2
|
|
||||||
"$@"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Uncomment TESTS_ENVIRONMENT=verbose to see "Starting: TEST" messages
|
|
||||||
#TESTS_ENVIRONMENT=verbose
|
|
||||||
TESTS_ENVIRONMENT=
|
|
||||||
|
|
||||||
#---------------------------------------------------------------------------
|
#---------------------------------------------------------------------------
|
||||||
# Change to tests directory if necessary
|
# Change to tests directory if necessary
|
||||||
|
|
||||||
@ -113,6 +43,48 @@ else
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
|
# Explanation of tests expected to fail:
|
||||||
|
# test_abstract_ipc: Relies on Linux-specific IPC functionality
|
||||||
|
# test_fork: Relies on using pthreads _after_ fork, _before_ exec
|
||||||
|
# test_diffserv: Needs IP_PROTO, IP_TOS setsockopt(); the headers
|
||||||
|
# are present on z/OS UNIX System Services, but
|
||||||
|
# fails with:
|
||||||
|
# EDC8109I Protocol not available. (./ip.cpp:164)
|
||||||
|
# NOTE: not listed as a valid IP setsockopt() option at:
|
||||||
|
# http://pic.dhe.ibm.com/infocenter/zos/v2r1/index.jsp?topic=%2Fcom.ibm.zos.v2r1.bpxbd00%2Fsetopt.htm
|
||||||
|
#
|
||||||
|
XFAIL_TESTS="test_abstract_ipc|test_fork|test_diffserv"
|
||||||
|
|
||||||
|
# BUILD_TIPC is not defined, so we skip all these tests
|
||||||
|
SKIP_TESTS="test_.*_tipc"
|
||||||
|
|
||||||
|
# Extract list of all test programs from tests/Makefile.am
|
||||||
|
#
|
||||||
|
# Excluding tests we know will fail because of missing functionality
|
||||||
|
#
|
||||||
|
noinst_PROGRAMS=$(grep "test_" Makefile.am | egrep -v "_SOURCES|XFAIL" |
|
||||||
|
sed 's/noinst_PROGRAMS.* test/test/; s/^ *//; s/ *\\ *$//;' |
|
||||||
|
grep -v "${SKIP_TESTS}" | egrep -v "${XFAIL_TESTS}")
|
||||||
|
#echo "Found tetsts: ${noinst_PROGRAMS}"
|
||||||
|
|
||||||
|
# Run tests on command line, or all tests we found
|
||||||
|
if [ -n "${1}" ]; then
|
||||||
|
TESTS="$*" # Run tests on command line
|
||||||
|
else
|
||||||
|
TESTS="${noinst_PROGRAMS}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
verbose() {
|
||||||
|
echo "Starting: $@" >&2
|
||||||
|
"$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Uncomment TESTS_ENVIRONMENT=verbose to see "Starting: TEST" messages
|
||||||
|
#TESTS_ENVIRONMENT=verbose
|
||||||
|
TESTS_ENVIRONMENT=
|
||||||
|
|
||||||
|
#---------------------------------------------------------------------------
|
||||||
# Explicitly add SRCDIR into library serach path, to make sure we
|
# Explicitly add SRCDIR into library serach path, to make sure we
|
||||||
# use our just-built version
|
# use our just-built version
|
||||||
LIBPATH="${SRCDIR}:/lib:/usr/lib"
|
LIBPATH="${SRCDIR}:/lib:/usr/lib"
|
||||||
|
Loading…
Reference in New Issue
Block a user