Description
On operating systems that have Python 2.6 as the default Python (link CentOS 6), running ctest does not actually run any tests. Here is a snippet of the test output
33/37 Test #33: system_tests_failover_list ................ Passed 0.51 sec Start 34: system_tests_denied_unsettled_multicast 34: Test command: /usr/bin/python "/home/gmurthy/opensource/qpid-dispatch/build/tests/run.py" "-m" "unittest" "-v" "system_tests_denied_unsettled_multicast" 34: Test timeout computed to be: 1500 34: ---------------------------------------------------------------------- 34: Ran 0 test in 0.200s 34: 34: OK 34/37 Test #34: system_tests_denied_unsettled_multicast ... Passed 0.54 sec test 35 Start 35: system_tests_auth_service_plugin 35: Test command: /usr/bin/python "/home/gmurthy/opensource/qpid-dispatch/build/tests/run.py" "-m" "unittest" "-v" "system_tests_auth_service_plugin" 35: Test timeout computed to be: 1500 35: 35: ---------------------------------------------------------------------- 35: Ran 0 tests in 0.322s
The problem seems to be that ctest is launching unittest which is older is Py 2.6 and is not feature rich as in Python 2.7
To solve this problem, Python provides a backwards compatible unit test package called unittest2. This unittest2 backports the new features provided by unittest test framework to older versions of Python.
unittest2 is available for Python versions 2.3 thru 3.4. It offers a test launcher called unit2 which should be used by ctest.
Attachments
Issue Links
- links to