Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Update tests for java
[simgrid.git] / buildtools / Cmake / AddTests.cmake
index 70c5336..8a61c39 100644 (file)
@@ -1,23 +1,25 @@
 ### Be sure we can execut some launch file
 exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh" OUTPUT_VARIABLE "OKITOKI")
 if(enable_smpi)
-       exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/src/smpi/smpicc" OUTPUT_VARIABLE "OKITOKI")
-       exec_program("chmod a=rwx ${PROJECT_DIRECTORY}/src/smpi/smpirun" OUTPUT_VARIABLE "OKITOKI")
+       exec_program("chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpicc" OUTPUT_VARIABLE "OKITOKI")
+       exec_program("chmod a=rwx ${CMAKE_BINARY_DIR}/bin/smpirun" OUTPUT_VARIABLE "OKITOKI")
 endif(enable_smpi)
 
 if(enable_memcheck)
+       include(FindPerl)
        exec_program("valgrind --version " OUTPUT_VARIABLE "VALGRIND_VERSION")
-       if(VALGRIND_VERSION)
+       if(VALGRIND_VERSION AND PERL_EXECUTABLE)
                string(REGEX MATCH "[0-9].[0-9].[0-9]" NEW_VALGRIND_VERSION "${VALGRIND_VERSION}")
                if(NEW_VALGRIND_VERSION)
+                       exec_program("${PROJECT_DIRECTORY}/buildtools/Cmake/generate_memcheck_tests.pl ${PROJECT_DIRECTORY} ${PROJECT_DIRECTORY}/buildtools/Cmake/AddTests.cmake > ${PROJECT_DIRECTORY}/buildtools/Cmake/memcheck_tests.cmake")
                else(NEW_VALGRIND_VERSION)
                        set(enable_memcheck false)
                        message("Command valgrind not found --> enable_memcheck autoset to false.")
                endif(NEW_VALGRIND_VERSION)
-       else(VALGRIND_VERSION)
+       else(VALGRIND_VERSION AND PERL_EXECUTABLE)
                set(enable_memcheck false)
-               message("Command valgrind not found --> enable_memcheck autoset to false.")
-       endif(VALGRIND_VERSION)
+               message(FATAL_ERROR "Command valgrind or perl not found --> enable_memcheck autoset to false.")
+       endif(VALGRIND_VERSION AND PERL_EXECUTABLE)
 endif(enable_memcheck)
 
 ### For code coverage
@@ -28,24 +30,11 @@ SET(DROP_SITE "cdash.inria.fr/CDash")
 SET(DROP_LOCATION "/submit.php?project=${PROJECT_NAME}")
 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(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no --valgrind ${VALGRIND_PATH}")
+set(MEMORYCHECK_COMMAND_OPTIONS "--trace-children=yes --leak-check=full --show-reachable=yes --track-origins=yes --read-var-info=no")
 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 (CheckTypeSize)
-CHECK_TYPE_SIZE("long" SIZEOF_LONG)
-IF(SIZEOF_LONG EQUAL 4)
-  SET(ARCH_32_BITS 1)
-ELSE(SIZEOF_LONG EQUAL 4)
-  SET(ARCH_32_BITS 0)
-ENDIF(SIZEOF_LONG EQUAL 4)
-
 INCLUDE(CTest)
 ENABLE_TESTING()
 
@@ -140,6 +129,7 @@ ADD_TEST(msg-masterslave    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/
 ADD_TEST(msg-masterslave-forwarder     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_forwarder.tesh)
 ADD_TEST(msg-masterslave-failure       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_failure.tesh)
 ADD_TEST(msg-masterslave-bypass        ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_bypass.tesh)
+ADD_TEST(msg-masterslave-console       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/masterslave/ masterslave_console.tesh)
 ADD_TEST(msg-masterslave-mailbox       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_mailbox.tesh)
 ADD_TEST(msg-masterslave-vivaldi       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_vivaldi.tesh)
 ADD_TEST(msg-migration         ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg migration/migration.tesh)
@@ -148,6 +138,10 @@ ADD_TEST(msg-priority              ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/ex
 ADD_TEST(msg-properties                ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg properties/msg_prop.tesh)
 ADD_TEST(msg-trace             ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg trace/trace.tesh)
 ADD_TEST(msg-masterslave_cpu_ti        ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg masterslave/masterslave_cpu_ti.tesh)
+ADD_TEST(msg_icomms ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/icomms peer.tesh)
+ADD_TEST(msg_icomms_waitany ${PROJECT_DIRECTORY}/examples/msg/icomms/peer3 
+                                                               ${PROJECT_DIRECTORY}/examples/msg/icomms/small_platform.xml
+                                                               ${PROJECT_DIRECTORY}/examples/msg/icomms/deployment_peer05.xml)
 
 IF(HAVE_TRACING)
   ADD_TEST(tracing-ms ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg tracing/ms.tesh)
@@ -196,27 +190,40 @@ ENDIF(${ARCH_32_BITS})
 # simdag examples
 ADD_TEST(simdag-test_simdag    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag.tesh)
 ADD_TEST(simdag-test_simdag2   ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag2.tesh)
+ADD_TEST(simdag-test_simdag_seq_access ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag test_simdag_seq_access.tesh)
 ADD_TEST(simdag-test_prop      ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag properties/test_prop.tesh)
 ADD_TEST(simdag-metaxml_test   ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag metaxml/metaxml_test.tesh)
+ADD_TEST(simdag-minmin_test    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/simdag/scheduling test_minmin.tesh)
 
 if(enable_smpi)
 # smpi examples
-ADD_TEST(smpi-bcast    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/smpi bcast.tesh)
-ADD_TEST(smpi-reduce   ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/smpi reduce.tesh)
+ADD_TEST(smpi-bcast    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_BINARY_DIR}/examples/smpi ${PROJECT_DIRECTORY}/examples/smpi/bcast.tesh)
+ADD_TEST(smpi-reduce   ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_BINARY_DIR}/examples/smpi ${PROJECT_DIRECTORY}/examples/smpi/reduce.tesh)
+if(HAVE_TRACING)
+  ADD_TEST(smpi-tracing-ptp ${CMAKE_BINARY_DIR}/bin/tesh --cd ${CMAKE_BINARY_DIR}/examples/smpi ${PROJECT_DIRECTORY}/examples/smpi/smpi_traced.tesh)
+endif(HAVE_TRACING)
 endif(enable_smpi)
 
 if(HAVE_GTNETS)
-ADD_TEST(msg-gtnets-waxman     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-waxman.tesh)
-ADD_TEST(msg-gtnets-dogbone    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-dogbone-gtnets.tesh)
-ADD_TEST(msg-gtnets-onelink    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-onelink-gtnets.tesh)
+ADD_TEST(msg-gtnets-waxman                     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-waxman.tesh)
+ADD_TEST(msg-gtnets-dogbone                    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-dogbone-gtnets.tesh)
+ADD_TEST(msg-gtnets-onelink                    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-onelink-gtnets.tesh)
 ADD_TEST(msg-gtnets-dogbone-lv08       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-dogbone-lv08.tesh)
 ADD_TEST(msg-gtnets-onelink-lv08       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/gtnets-onelink-lv08.tesh)
+  if(HAVE_TRACING)
+  ADD_TEST(msg-tracing-gtnets-waxman                   ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/tracing-gtnets-waxman.tesh)
+  ADD_TEST(msg-tracing-gtnets-dogbone                  ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/tracing-gtnets-dogbone-gtnets.tesh)
+  ADD_TEST(msg-tracing-gtnets-onelink                  ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/tracing-gtnets-onelink-gtnets.tesh)
+  ADD_TEST(msg-tracing-gtnets-dogbone-lv08     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/tracing-gtnets-dogbone-lv08.tesh)
+  ADD_TEST(msg-tracing-gtnets-onelink-lv08     ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg gtnets/tracing-gtnets-onelink-lv08.tesh)
+  endif(HAVE_TRACING)
 endif(HAVE_GTNETS)
 
 # Lua examples
 if(HAVE_LUA)
-ADD_TEST(lua-masterslave       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave.tesh)
-ADD_TEST(lua-mult_matrix       ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua mult_matrix.tesh)
+ADD_TEST(lua-masterslave               ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave.tesh)
+ADD_TEST(lua-mult_matrix               ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua mult_matrix.tesh)
+ADD_TEST(lua-masterslave_bypass ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/lua master_slave_bypass.tesh)
 endif(HAVE_LUA)
 
 # Ruby examples
@@ -228,16 +235,18 @@ endif(HAVE_RUBY)
 
 # END TESH TESTS
 
+if(HAVE_MC)
 ADD_TEST(mc-bugged1                    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc bugged1.tesh)
 ADD_TEST(mc-bugged2                    ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc bugged2.tesh)
 ADD_TEST(mc-centralized                ${CMAKE_BINARY_DIR}/bin/tesh --cd ${PROJECT_DIRECTORY}/examples/msg/mc centralized.tesh)
+endif(HAVE_MC)
 
 if(HAVE_JAVA)
 # java examples
-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})
+ADD_TEST(java-basic    ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/basic BasicTest ${simgrid_BINARY_DIR})
+ADD_TEST(java-pingpong         ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/ping_pong PingPongTest ${simgrid_BINARY_DIR})
+ADD_TEST(java-comm_time ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/comm_time CommTimeTest ${simgrid_BINARY_DIR})
+ADD_TEST(java-suspend  ${PROJECT_DIRECTORY}/buildtools/Cmake/test_java.sh ${PROJECT_DIRECTORY}/examples/java/suspend SuspendTest ${simgrid_BINARY_DIR})
 endif(HAVE_JAVA)
 
 ###
@@ -276,6 +285,6 @@ add_test(test-simdag-1 ${PROJECT_DIRECTORY}/testsuite/simdag/sd_test --cfg=path:
 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               ${CMAKE_BUILD_DIR}/src/testall)
+add_test(testall               ${PROJECT_DIRECTORY}/src/testall)
 
 include(${PROJECT_DIRECTORY}/buildtools/Cmake/memcheck_tests.cmake)