You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by gm...@apache.org on 2019/01/22 17:00:56 UTC
[qpid-dispatch] branch master updated: DISPATCH-1243: modify unit
test to only run qdrouterd under valgrind. This closes #440.
This is an automated email from the ASF dual-hosted git repository.
gmurthy pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/qpid-dispatch.git
The following commit(s) were added to refs/heads/master by this push:
new de77a15 DISPATCH-1243: modify unit test to only run qdrouterd under valgrind. This closes #440.
de77a15 is described below
commit de77a15ef0d94d37064af673f56533be3c1118f4
Author: Kenneth Giusti <kg...@apache.org>
AuthorDate: Wed Jan 16 09:51:42 2019 -0500
DISPATCH-1243: modify unit test to only run qdrouterd under valgrind. This closes #440.
---
CMakeLists.txt | 4 ++--
run.py.in | 8 ++++----
tests/CMakeLists.txt | 26 +++++++++++++-------------
tests/system_test.py | 5 +++--
4 files changed, 22 insertions(+), 21 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 61cbd9b..dc28a52 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -143,9 +143,9 @@ if (USE_VALGRIND)
if (CMAKE_BUILD_TYPE MATCHES "Coverage")
message(WARNING "Building for coverage analysis; disabling valgrind run-time error detection")
else ()
- set(TEST_RUNNER "${VALGRIND_EXECUTABLE} --quiet --leak-check=full --show-leak-kinds=definite --errors-for-leak-kinds=definite --error-exitcode=42 --suppressions=${CMAKE_SOURCE_DIR}/tests/valgrind.supp")
+ set(QDROUTERD_RUNNER "${VALGRIND_EXECUTABLE} --quiet --leak-check=full --show-leak-kinds=definite --errors-for-leak-kinds=definite --error-exitcode=42 --suppressions=${CMAKE_SOURCE_DIR}/tests/valgrind.supp")
if (VALGRIND_XML)
- set(TEST_RUNNER "${TEST_RUNNER} --xml=yes --xml-file=valgrind-%p.xml")
+ set(QDROUTERD_RUNNER "${QDROUTERD_RUNNER} --xml=yes --xml-file=valgrind-%p.xml")
endif()
endif ()
endif()
diff --git a/run.py.in b/run.py.in
index 140f8b8..56edc61 100755
--- a/run.py.in
+++ b/run.py.in
@@ -59,8 +59,8 @@ def getpath(env):
return path.split(os.pathsep)
return []
-# Test runner program and args (e.g. valgrind)
-test_runner = "${TEST_RUNNER}"
+# runner program (e.g. valgrind) and args used to run qdrouterd
+qdrouterd_runner = "${QDROUTERD_RUNNER}"
env_vars = {
'PYTHONPATH': os.pathsep.join(sys.path),
@@ -77,7 +77,7 @@ env_vars = {
'BUILD_DIR': "${CMAKE_BINARY_DIR}",
'QPID_DISPATCH_HOME': "${CMAKE_SOURCE_DIR}",
'QPID_DISPATCH_LIB': "${CMAKE_BINARY_DIR}/src/${QPID_DISPATCH_LIB}",
- 'QPID_DISPATCH_TEST_RUNNER': test_runner
+ 'QPID_DISPATCH_RUNNER': qdrouterd_runner
}
os.environ.update(env_vars)
@@ -125,7 +125,7 @@ if __name__ == "__main__":
for name, value in env_vars.items(): print('%s="%s"'%(name, value))
print("export %s"%' '.join(env_vars.keys()))
elif sys.argv[1] == '-x':
- args = test_runner.split() + sys.argv[2:]
+ args = qdrouterd_runner.split() + sys.argv[2:]
error_prefix = "Running '%s': "%(args)
os.execvp(args[0], args)
elif sys.argv[1].startswith('-'):
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index 6eb0547..e3e5cb0 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -56,20 +56,20 @@ target_link_libraries(unit_tests_size qpid-dispatch)
set(TEST_WRAP ${PYTHON_EXECUTABLE} ${CMAKE_CURRENT_BINARY_DIR}/run.py)
-add_test(unit_tests_size_10000 ${TEST_WRAP} -x unit_tests_size 10000)
-add_test(unit_tests_size_512 ${TEST_WRAP} -x unit_tests_size 512)
-add_test(unit_tests_size_10 ${TEST_WRAP} -x unit_tests_size 10)
-add_test(unit_tests_size_7 ${TEST_WRAP} -x unit_tests_size 7)
-add_test(unit_tests_size_5 ${TEST_WRAP} -x unit_tests_size 5)
-add_test(unit_tests_size_3 ${TEST_WRAP} -x unit_tests_size 3)
-add_test(unit_tests_size_2 ${TEST_WRAP} -x unit_tests_size 2)
-add_test(unit_tests_size_1 ${TEST_WRAP} -x unit_tests_size 1)
-add_test(unit_tests ${TEST_WRAP} -x unit_tests ${CMAKE_CURRENT_SOURCE_DIR}/threads4.conf)
+add_test(unit_tests_size_10000 ${TEST_WRAP} unit_tests_size 10000)
+add_test(unit_tests_size_512 ${TEST_WRAP} unit_tests_size 512)
+add_test(unit_tests_size_10 ${TEST_WRAP} unit_tests_size 10)
+add_test(unit_tests_size_7 ${TEST_WRAP} unit_tests_size 7)
+add_test(unit_tests_size_5 ${TEST_WRAP} unit_tests_size 5)
+add_test(unit_tests_size_3 ${TEST_WRAP} unit_tests_size 3)
+add_test(unit_tests_size_2 ${TEST_WRAP} unit_tests_size 2)
+add_test(unit_tests_size_1 ${TEST_WRAP} unit_tests_size 1)
+add_test(unit_tests ${TEST_WRAP} unit_tests ${CMAKE_CURRENT_SOURCE_DIR}/threads4.conf)
# Unit test python modules
-add_test(router_engine_test ${TEST_WRAP} -x unit2 -v router_engine_test)
-add_test(management_test ${TEST_WRAP} -x unit2 -v management)
-add_test(router_policy_test ${TEST_WRAP} -x unit2 -v router_policy_test)
+add_test(router_engine_test ${TEST_WRAP} unit2 -v router_engine_test)
+add_test(management_test ${TEST_WRAP} unit2 -v management)
+add_test(router_policy_test ${TEST_WRAP} unit2 -v router_policy_test)
if(USE_LIBWEBSOCKETS)
set(SYSTEM_TESTS_HTTP system_tests_http)
@@ -129,7 +129,7 @@ foreach(py_test_module
system_tests_multi_phase
)
- add_test(${py_test_module} ${TEST_WRAP} -x unit2 -v ${py_test_module})
+ add_test(${py_test_module} ${TEST_WRAP} unit2 -v ${py_test_module})
list(APPEND SYSTEM_TEST_FILES ${CMAKE_CURRENT_SOURCE_DIR}/${py_test_module}.py)
endforeach()
diff --git a/tests/system_test.py b/tests/system_test.py
index c142ebb..ca8e1f0 100755
--- a/tests/system_test.py
+++ b/tests/system_test.py
@@ -198,10 +198,10 @@ def message(**properties):
setattr(m, name, value)
return m
+
class Process(subprocess.Popen):
"""
Popen that can be torn down at the end of a TestCase and stores its output.
- Use $TEST_RUNNER as a prefix to the executable if it is defined in the environment.
"""
# Expected states of a Process at teardown
@@ -231,7 +231,6 @@ class Process(subprocess.Popen):
self.outdir = os.getcwd()
self.outfile = os.path.abspath(self.unique(self.name))
self.torndown = False
- args = os.environ.get('QPID_DISPATCH_TEST_RUNNER', '').split() + args
with open(self.outfile + '.out', 'w') as out:
kwargs.setdefault('stdout', out)
kwargs.setdefault('stderr', subprocess.STDOUT)
@@ -351,6 +350,8 @@ class Qdrouterd(Process):
args += ['-I', pyinclude]
elif env_home:
args += ['-I', os.path.join(env_home, 'python')]
+
+ args = os.environ.get('QPID_DISPATCH_RUNNER', '').split() + args
super(Qdrouterd, self).__init__(args, name=name, expect=Process.RUNNING)
self._management = None
self._wait_ready = False
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org