1 # Specify the source files of multi-files tests
2 set(activity-lifecycle_sources ../catch_simgrid.cpp)
3 foreach(x sleep exec comm comm_direct test-wait)
4 set(activity-lifecycle_sources ${activity-lifecycle_sources} activity-lifecycle/testing_${x}.cpp)
7 foreach(x actor actor-autorestart actor-suspend
9 comm-get-sender comm-pt2pt wait-all-for wait-any-for
10 cloud-interrupt-migration cloud-two-execs
11 monkey-masterworkers monkey-semaphore
13 dag-incomplete-simulation dependencies
14 host-on-off host-on-off-actors host-on-off-recv host-multicore-speed-file io-set-bw
15 basic-link-test basic-parsing-test evaluate-get-route-time evaluate-parse-time is-router
16 storage_client_server listen_async pid
19 vm-live-migration vm-suicide issue71)
21 if(NOT DEFINED ${x}_sources)
22 set(${x}_sources ${x}/${x}.cpp)
25 add_executable (${x} EXCLUDE_FROM_ALL ${${x}_sources})
26 target_link_libraries(${x} simgrid)
27 set_target_properties(${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
28 add_dependencies(tests ${x})
30 foreach(file ${${x}_sources})
31 set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${file})
36 set_property(TARGET activity-lifecycle APPEND PROPERTY INCLUDE_DIRECTORIES "${INTERNAL_INCLUDES}") # for <catch.hpp> and catch_simgrid
40 ## Some need to be run with all factories, some don't need tesh to run
41 foreach(x actor actor-autorestart actor-suspend activity-lifecycle comm-get-sender wait-all-for wait-any-for
42 cloud-interrupt-migration cloud-two-execs concurrent_rw dag-incomplete-simulation dependencies io-set-bw
43 vm-live-migration vm-suicide)
44 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
45 ADD_TESH_FACTORIES(tesh-s4u-${x} "*" --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
48 foreach(x basic-link-test basic-parsing-test host-on-off host-on-off-actors host-on-off-recv host-multicore-speed-file is-router listen_async
49 monkey-masterworkers monkey-semaphore
50 pid storage_client_server trace-integration seal-platform issue71)
51 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
52 ADD_TESH(tesh-s4u-${x}
53 --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}
54 --setenv srcdir=${CMAKE_CURRENT_SOURCE_DIR}/${x}
55 --setenv rootdir=${CMAKE_HOME_DIRECTORY}
56 --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
57 --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}
58 ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
62 foreach(x monkey-masterworkers)
63 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.py.tesh)
64 set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.py)
67 ADD_TESH(tesh-python-${x}
68 --setenv srcdir=${CMAKE_CURRENT_SOURCE_DIR}/${x}
69 --setenv pythoncmd=${PYTHON_EXECUTABLE}
70 --setenv LD_LIBRARY_PATH=${TESH_LIBRARY_PATH}
71 --setenv PYTHONPATH=${CMAKE_BINARY_DIR}/lib
72 --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
73 --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}
74 ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.py.tesh)
80 # Monkey tests are launched directly, not with tesh
81 set(_monkey-semaphore_disable_python 1) # Semaphore not exposed to python
82 foreach(x monkey-masterworkers monkey-semaphore)
83 ADD_TEST(monkey-s4u-${x} "${PYTHON_EXECUTABLE}" ${CMAKE_HOME_DIRECTORY}/tools/simgrid-monkey -- ${VALGRIND_WRAPPER_UNBOXED} ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}/${x})
85 if(NOT DEFINED _${x}_disable_python)
86 ADD_TEST(monkey-python-${x} "${PYTHON_EXECUTABLE}" ${CMAKE_HOME_DIRECTORY}/tools/simgrid-monkey "${PYTHON_EXECUTABLE}" ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.py)
87 set_tests_properties(monkey-python-${x} PROPERTIES ENVIRONMENT "PYTHONPATH=${CMAKE_BINARY_DIR}/lib")
92 # The output is not relevant
93 ADD_TEST(tesh-s4u-comm-pt2pt ${CMAKE_BINARY_DIR}/teshsuite/s4u/comm-pt2pt/comm-pt2pt ${CMAKE_HOME_DIRECTORY}/examples/platforms/cluster_backbone.xml)
96 foreach (example evaluate-get-route-time evaluate-parse-time)
97 ADD_TEST(cover-${example} ${CMAKE_CURRENT_BINARY_DIR}/${example}/${example} ${CMAKE_HOME_DIRECTORY}/examples/platforms/g5k.xml)
101 # NS-3 specific tests
103 foreach(x ns3-simultaneous-send-rcv ns3-from-src-to-itself)
104 add_executable (${x} EXCLUDE_FROM_ALL ${x}/${x}.cpp)
105 target_link_libraries(${x} simgrid)
106 set_target_properties(${x} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/${x})
107 add_dependencies(tests ${x})
108 ADD_TESH(tesh-s4u-${x} --setenv srcdir=${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x} --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x} ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}.tesh)
112 # BMF specific tesh tests
113 foreach(x cloud-two-execs concurrent_rw)
114 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}-bmf.tesh)
117 ADD_TESH(tesh-s4u-${x}-bmf
118 --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}
119 --setenv srcdir=${CMAKE_CURRENT_SOURCE_DIR}/${x}
120 --setenv rootdir=${CMAKE_HOME_DIRECTORY}
121 --setenv platfdir=${CMAKE_HOME_DIRECTORY}/examples/platforms
122 --cd ${CMAKE_BINARY_DIR}/teshsuite/s4u/${x}
123 ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/${x}/${x}-bmf.tesh)
128 foreach(x ns3-simultaneous-send-rcv ns3-from-src-to-itself)
129 set(teshsuite_src ${teshsuite_src} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.cpp)
130 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/${x}/${x}.tesh)
133 # test for code coverage
134 ADD_TEST(test-help-version ${VALGRIND_WRAPPER_UNBOXED} ${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test/basic-parsing-test
135 --version --help --help-aliases --help-models --help-tracing)
136 ADD_TEST(test-help-logs ${VALGRIND_WRAPPER_UNBOXED} ${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test/basic-parsing-test
137 --help-logs --help-log-categories)
139 ADD_TESH(tesh-parser-bypass --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/basic-parsing-test --setenv srcdir=${CMAKE_HOME_DIRECTORY} basic-parsing-test-bypass.tesh)
140 ADD_TESH(tesh-parser-sym-full --setenv bindir=${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test --cd ${CMAKE_HOME_DIRECTORY}/teshsuite/s4u/basic-parsing-test basic-parsing-test-sym-full.tesh)
142 ADD_TEST(tesh-parser-full-links01 ${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test/basic-parsing-test ${CMAKE_HOME_DIRECTORY}/teshsuite/platforms/two_clusters.xml FULL_LINK)
143 ADD_TEST(tesh-parser-full-links02 ${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test/basic-parsing-test ${CMAKE_HOME_DIRECTORY}/teshsuite/platforms/two_clusters_one_name.xml FULL_LINK)
144 ADD_TEST(tesh-parser-one-link-g5k ${CMAKE_BINARY_DIR}/teshsuite/s4u/basic-parsing-test/basic-parsing-test ${CMAKE_HOME_DIRECTORY}/examples/platforms/g5k.xml ONE_LINK)
146 set(teshsuite_src ${teshsuite_src} ${CMAKE_SOURCE_DIR}/src/include/catch_simgrid.hpp PARENT_SCOPE)
147 set(tesh_files ${tesh_files} ${CMAKE_CURRENT_SOURCE_DIR}/basic-parsing-test/basic-parsing-test-sym-full.tesh
148 ${CMAKE_CURRENT_SOURCE_DIR}/basic-parsing-test/basic-parsing-test-bypass.tesh PARENT_SCOPE)
149 set(xml_files ${xml_files} ${CMAKE_CURRENT_SOURCE_DIR}/activity-lifecycle/testing_platform.xml
150 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1.0-hbp1.0-hbp1.0.xml
151 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1.0-hbp3.0-hbp4.0.xml
152 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1.5-hbp1.5.xml
153 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s0-c0s1.xml
154 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s0-c1s0.xml
155 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s1-c0s2.xml
156 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s1-c2s2.xml
157 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s2-c1s0.xml
158 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c0s2-c1s1.xml
159 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c1s1-c1s2.xml
160 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp1-c1s1-c3s2.xml
161 ${CMAKE_CURRENT_SOURCE_DIR}/trace-integration/test-hbp2.5-hbp1.5.xml
162 ${CMAKE_CURRENT_SOURCE_DIR}/vm-live-migration/platform.xml
163 ${CMAKE_CURRENT_SOURCE_DIR}/issue71/platform_bad.xml