summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cpp/src/tests/CMakeLists.txt26
-rwxr-xr-xcpp/src/tests/test_wrap48
2 files changed, 62 insertions, 12 deletions
diff --git a/cpp/src/tests/CMakeLists.txt b/cpp/src/tests/CMakeLists.txt
index 79f6b9e582..4edbd0f2e5 100644
--- a/cpp/src/tests/CMakeLists.txt
+++ b/cpp/src/tests/CMakeLists.txt
@@ -220,21 +220,23 @@ if (CMAKE_SYSTEM_NAME STREQUAL Windows)
set (test_script_suffix ".w32")
endif (CMAKE_SYSTEM_NAME STREQUAL Windows)
+set(test_wrap ${CMAKE_CURRENT_SOURCE_DIR}/test_wrap${test_script_suffix})
+
add_test (unit_test unit_test)
add_test (start_broker ${CMAKE_CURRENT_SOURCE_DIR}/start_broker${test_script_suffix})
-add_test (client_test client_test)
-add_test (quick_perftest perftest --summary --count 100)
-add_test (quick_topictest ${CMAKE_CURRENT_SOURCE_DIR}/quick_topictest${test_script_suffix})
-add_test (quick_txtest txtest --queues 4 --tx-count 10 --quiet)
-if (${PYTHONINTERP_FOUND})
- add_test (run_header_test run_header_test${test_script_suffix})
- add_test (python_tests python_tests${test_script_suffix})
-endif (${PYTHONINTERP_FOUND})
+add_test (client_test ${test_wrap} ./client_test)
+add_test (quick_perftest ${test_wrap} ./perftest --summary --count 100)
+add_test (quick_topictest ${test_wrap} ${CMAKE_CURRENT_SOURCE_DIR}/quick_topictest${test_script_suffix})
+add_test (quick_txtest ${test_wrap} ./txtest --queues 4 --tx-count 10 --quiet)
+if (PYTHON_EXECUTABLE)
+ add_test (run_header_test ${test_wrap} ${CMAKE_CURRENT_SOURCE_DIR}/run_header_test${test_script_suffix})
+ add_test (python_tests ${test_wrap} ${CMAKE_CURRENT_SOURCE_DIR}/python_tests${test_script_suffix})
+endif (PYTHON_EXECUTABLE)
add_test (stop_broker ${CMAKE_CURRENT_SOURCE_DIR}/stop_broker${test_script_suffix})
-if (${PYTHONINTERP_FOUND})
- add_test (federation_tests run_federation_tests${test_script_suffix})
- add_test (acl_tests run_acl_tests${test_script_suffix})
-endif (${PYTHONINTERP_FOUND})
+if (PYTHON_EXECUTABLE)
+ add_test (federation_tests ${CMAKE_CURRENT_SOURCE_DIR}/run_federation_tests${test_script_suffix})
+ add_test (acl_tests ${CMAKE_CURRENT_SOURCE_DIR}/run_acl_tests${test_script_suffix})
+endif (PYTHON_EXECUTABLE)
#EXTRA_DIST += \
# run_test vg_check \
diff --git a/cpp/src/tests/test_wrap b/cpp/src/tests/test_wrap
new file mode 100755
index 0000000000..dd43c5a2e2
--- /dev/null
+++ b/cpp/src/tests/test_wrap
@@ -0,0 +1,48 @@
+#!/bin/sh
+
+#
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied. See the License for the
+# specific language governing permissions and limitations
+# under the License.
+#
+
+# Read the started broker port, set appropriate env vars
+# then run the program under test
+
+QPID_PORT=`cat qpidd.port`
+export QPID_PORT
+
+program=$1
+shift
+
+QPID_LOG_TO_FILE=`basename $program`.log
+export QPID_LOG_TO_FILE
+
+ERROR=0
+$program $* || ERROR=1
+
+# Check qpidd.log.
+egrep 'warning\|error\|critical' $QPID_LOG_TO_FILE && {
+ echo "WARNING: Suspicious broker log entries in $QPID_LOG_TO_FILE, above."
+}
+
+# Check valgrind log.
+#if test -n "$VALGRIND"; then
+# . `dirname $0`/vg_check $VG_LOG*
+# vg_check qpidd.vglog* || ERROR=1
+#fi
+
+exit $ERROR