summaryrefslogtreecommitdiffstats
path: root/tests/SinkTest.cmake
blob: 4eb8f430a0502bc2cee056b0dd06f23fa737133f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
function(add_memcheck_test name binary)
    if (${ENABLE_MEMCHECK})
        set(memcheck_command "${MEMORYCHECK_COMMAND} ${MEMORYCHECK_COMMAND_OPTIONS}")
        if (NOT ${memcheck_command})
            message("MEMORYCHECK_COMMAND not defined.")
        else()
            separate_arguments(memcheck_command)
            add_test(memcheck_${name} ${memcheck_command} ./${binary} ${ARGN})
        endif()
    endif()
endfunction(add_memcheck_test)

macro(auto_tests)
    foreach(_testname ${ARGN})
        add_executable(${_testname} ${_testname}.cpp)
        add_test(${_testname} ${_testname})
        add_memcheck_test(${_testname} ${_testname})
        target_link_libraries(${_testname}
            sink libhawd
            sink_test
            Qt5::Core
            Qt5::Concurrent
            Qt5::Test
        )
    endforeach(_testname)
endmacro(auto_tests)

macro(manual_tests)
    foreach(_testname ${ARGN})
        add_executable(${_testname} ${_testname}.cpp)
        add_memcheck_test(${_testname} ${_testname})
        target_link_libraries(${_testname}
            sink
            libhawd
            sink_test
            Qt5::Core
            Qt5::Concurrent
            Qt5::Test
        )
    endforeach(_testname)
endmacro(manual_tests)