SET(DROP_SITE_CDASH TRUE)
SET(TRIGGER_SITE "http://cdash.inria.fr/CDash/cgi-bin/Submit-Random-TestingResults.cgi")
SET(COVERAGE_COMMAND "${GCOV_PATH}/gcov")
-SET(VALGRIND_COMMAND "${VALGRIND_PATH}/valgrind")
-SET(MEMORYCHECK_COMMAND "${VALGRIND_PATH}/valgrind")
-set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no")
+#SET(VALGRIND_COMMAND "${VALGRIND_PATH}/valgrind")
+#SET(MEMORYCHECK_COMMAND "${VALGRIND_PATH}/valgrind")
+#set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no")
+set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no --valgrind ${VALGRIND_PATH}")
+SET(VALGRIND_COMMAND "${PROJECT_DIRECTORY}/buildtools/Cmake/my_valgrind.pl")
+SET(MEMORYCHECK_COMMAND "${PROJECT_DIRECTORY}/buildtools/Cmake/my_valgrind.pl")
#If you use the --read-var-info option Memcheck will run more slowly but may give a more detailed description of any illegal address.
### Check 32bits or 64bits
INCLUDE(CTest)
ENABLE_TESTING()
+if(NOT enable_memcheck)
ADD_TEST(tesh-self-basic ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd "${PROJECT_DIRECTORY}/tools/tesh" basic.tesh)
ADD_TEST(tesh-self-cd ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd "${PROJECT_DIRECTORY}/tools/tesh" cd.tesh)
ADD_TEST(tesh-self-IO-broken-pipe ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd "${PROJECT_DIRECTORY}/tools/tesh" IO-broken-pipe.tesh)
ADD_TEST(msg-masterslave-forwarder ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_forwarder.tesh)
ADD_TEST(msg-masterslave-failure ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_failure.tesh)
ADD_TEST(msg-masterslave-bypass ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_bypass.tesh)
+ADD_TEST(msg-masterslave-mailbox ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_mailbox.tesh)
+ADD_TEST(msg-masterslave-vivaldi ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_vivaldi.tesh)
ADD_TEST(msg-migration ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg migration/migration.tesh)
ADD_TEST(msg-ptask ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg parallel_task/parallel_task.tesh)
ADD_TEST(msg-priority ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg priority/priority.tesh)
ADD_TEST(msg-trace ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg trace/trace.tesh)
ADD_TEST(msg-masterslave_cpu_ti ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_cpu_ti.tesh)
+IF(HAVE_TRACING)
+ ADD_TEST(tracing-ms ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg tracing/ms.tesh)
+ ADD_TEST(tracing-categories ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg tracing/categories.tesh)
+ENDIF(HAVE_TRACING)
+
+
IF(${ARCH_32_BITS})
ADD_TEST(gras-ping-sg-32 ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/ping test_sg_32)
ADD_TEST(gras-rpc-sg-32 ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/gras/rpc test_sg_32)
ADD_TEST(msg-gtnets-onelink-lv08 ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-onelink-lv08.tesh)
endif(HAVE_GTNETS)
-# END TESH TESTS
-
-# testsuite directory
-add_test(test-xbt-log ${PROJECT_DIRECTORY}/testsuite/xbt/log_usage)
-add_test(test-xbt-graphxml ${PROJECT_DIRECTORY}/testsuite/xbt/graphxml_usage ${PROJECT_DIRECTORY}/testsuite/xbt/graph.xml)
-add_test(test-xbt-heap ${PROJECT_DIRECTORY}/testsuite/xbt/heap_bench)
-
-add_test(test-surf-lmm ${PROJECT_DIRECTORY}/testsuite/surf/lmm_usage)
-add_test(test-surf-maxmin ${PROJECT_DIRECTORY}/testsuite/surf/maxmin_bench)
-add_test(test-surf-usage ${PROJECT_DIRECTORY}/testsuite/surf/surf_usage --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/ platform.xml)
-add_test(test-surf_usage2 ${PROJECT_DIRECTORY}/testsuite/surf/surf_usage2 --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/ platform.xml)
-add_test(test-surf-trace ${PROJECT_DIRECTORY}/testsuite/surf/trace_usage --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/)
+# Lua examples
+if(HAVE_LUA)
+ADD_TEST(lua-masterslave ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave.tesh)
+ADD_TEST(lua-mult_matrix ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/lua mult_matrix.tesh)
+endif(HAVE_LUA)
-add_test(test-simdag-1 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag small_platform_variable.xml)
-add_test(test-simdag-2 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/small_platform.xml)
-add_test(test-simdag-3 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/msg_platform.xml)
+# Ruby examples
+if(HAVE_RUBY)
+ADD_TEST(ruby-masterslave ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/ruby MasterSlave.tesh)
+ADD_TEST(ruby-ping_pong ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/ruby PingPong.tesh)
+ADD_TEST(ruby-quicksort ${PROJECT_DIRECTORY}/tools/tesh/tesh --cd ${PROJECT_DIRECTORY}/examples/ruby Quicksort.tesh)
+endif(HAVE_RUBY)
+# END TESH TESTS
if(HAVE_JAVA)
# java examples
-ADD_TEST(java-basic ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/basic BasicTest)
-ADD_TEST(java-pingpong ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/ping_pong PingPongTest)
-ADD_TEST(java-comm_time ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/comm_time CommTimeTest)
-ADD_TEST(java-suspend ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/suspend SuspendTest)
+ADD_TEST(java-basic ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/basic BasicTest ${PROJECT_DIRECTORY})
+ADD_TEST(java-pingpong ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/ping_pong PingPongTest ${PROJECT_DIRECTORY})
+ADD_TEST(java-comm_time ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/comm_time CommTimeTest ${PROJECT_DIRECTORY})
+ADD_TEST(java-suspend ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/suspend SuspendTest ${PROJECT_DIRECTORY})
endif(HAVE_JAVA)
###
# Expected to fail until the parser gets better (v3.3.5?)
set_tests_properties(simdag-metaxml_test PROPERTIES WILL_FAIL true)
set_tests_properties(tesh-simdag-flatifier PROPERTIES WILL_FAIL true)
+
+if(HAVE_RUBY)
+set_tests_properties(ruby-quicksort PROPERTIES WILL_FAIL true)
+endif(HAVE_RUBY)
+endif(NOT enable_memcheck)
+
+# testsuite directory
+add_test(test-xbt-log ${PROJECT_DIRECTORY}/testsuite/xbt/log_usage)
+add_test(test-xbt-graphxml ${PROJECT_DIRECTORY}/testsuite/xbt/graphxml_usage ${PROJECT_DIRECTORY}/testsuite/xbt/graph.xml)
+add_test(test-xbt-heap ${PROJECT_DIRECTORY}/testsuite/xbt/heap_bench)
+
+add_test(test-surf-lmm ${PROJECT_DIRECTORY}/testsuite/surf/lmm_usage)
+add_test(test-surf-maxmin ${PROJECT_DIRECTORY}/testsuite/surf/maxmin_bench)
+add_test(test-surf-usage ${PROJECT_DIRECTORY}/testsuite/surf/surf_usage --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/ platform.xml)
+add_test(test-surf_usage2 ${PROJECT_DIRECTORY}/testsuite/surf/surf_usage2 --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/ platform.xml)
+add_test(test-surf-trace ${PROJECT_DIRECTORY}/testsuite/surf/trace_usage --cfg=path:${PROJECT_DIRECTORY}/testsuite/surf/)
+
+add_test(test-simdag-1 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag small_platform_variable.xml)
+add_test(test-simdag-2 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/small_platform.xml)
+add_test(test-simdag-3 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:${PROJECT_DIRECTORY}/testsuite/simdag ${PROJECT_DIRECTORY}/examples/msg/msg_platform.xml)
+
+add_test(testall ${PROJECT_DIRECTORY}/src/testall)
+
+if(enable_memcheck)
+ include(${PROJECT_DIRECTORY}/buildtools/Cmake/src/memcheck_tests.txt)
+endif(enable_memcheck)