Imported Upstream version 1.25.0
[platform/core/ml/nnfw.git] / compiler / visq-unittest / CMakeLists.txt
1 if(NOT ENABLE_TEST)
2   return()
3 endif(NOT ENABLE_TEST)
4
5 unset(VISQ_TEST_DEPS)
6
7 ###
8 ### Copy test files
9 ###
10 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/test
11                    COMMAND ${CMAKE_COMMAND} -E copy_directory
12                    ${CMAKE_CURRENT_SOURCE_DIR}/test ${CMAKE_CURRENT_BINARY_DIR}/test)
13
14 list(APPEND VISQ_TEST_DEPS ${CMAKE_CURRENT_BINARY_DIR}/test)
15
16 ###
17 ### Import visqlib module
18 ###
19 get_target_property(VISQ_BIN_PATH visq BINARY_DIR)
20 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/visqlib
21                    COMMAND ${CMAKE_COMMAND} -E create_symlink
22                    ${VISQ_BIN_PATH}/visqlib ${CMAKE_CURRENT_BINARY_DIR}/visqlib)
23
24 list(APPEND VISQ_TEST_DEPS ${CMAKE_CURRENT_BINARY_DIR}/visqlib)
25
26 ###
27 ### Import pics module
28 ###
29 get_target_property(PICS_BIN_PATH pics BINARY_DIR)
30 add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/circle
31                    COMMAND ${CMAKE_COMMAND} -E create_symlink
32                    ${PICS_BIN_PATH}/circle ${CMAKE_CURRENT_BINARY_DIR}/circle)
33
34 list(APPEND VISQ_TEST_DEPS ${CMAKE_CURRENT_BINARY_DIR}/circle)
35
36 ###
37 ### Generate Resources.py
38 ###
39 set(RESOURCE_FILE "${CMAKE_CURRENT_BINARY_DIR}/test/Resources.py")
40
41 get_target_property(FP32_MODEL_DIR testDataGenerator BINARY_DIR)
42
43 add_custom_command(
44   OUTPUT ${RESOURCE_FILE}
45   COMMAND ${CMAKE_COMMAND} -E echo 'fp32_model_dir=\"${FP32_MODEL_DIR}\"' >> ${RESOURCE_FILE}
46   COMMENT "Generate file to specify resource location"
47 )
48
49 list(APPEND VISQ_TEST_DEPS ${RESOURCE_FILE})
50
51 add_custom_target(visq_unittest ALL DEPENDS ${VISQ_TEST_DEPS})
52
53 # Use Python in venv to run unittest with pydot module
54 add_test(
55   NAME visq_unittest
56   COMMAND ${NNCC_OVERLAY_DIR}/venv_2_12_1/bin/python -m unittest
57   WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
58 )