|
1 | | -if (NOT MAC_CATALYST) |
2 | | - |
3 | 1 | if (OCOS_ENABLE_SELECTED_OPLIST) |
4 | 2 | # currently the tests don't handle operator exclusion cleanly. |
5 | 3 | message(FATAL_ERROR "Due to usage of OCOS_ENABLE_SELECTED_OPLIST excluding operators the tests are unable to be built and run") |
@@ -55,7 +53,7 @@ function(add_test_target) |
55 | 53 | "${TEST_SRC_DIR}/unittest_main/test_main.cc") |
56 | 54 | target_link_libraries(${ARG_TARGET} PRIVATE |
57 | 55 | ${ARG_LIBRARIES} |
58 | | - gtest gmock) |
| 56 | + gtest) |
59 | 57 |
|
60 | 58 | if(OCOS_USE_CUDA) |
61 | 59 | target_link_directories(${ARG_TARGET} PRIVATE ${CUDAToolkit_LIBRARY_DIR}) |
@@ -93,7 +91,7 @@ function(add_test_target) |
93 | 91 |
|
94 | 92 | target_link_libraries(${ARG_TARGET} PRIVATE |
95 | 93 | ${ARG_LIBRARIES} |
96 | | - gtest gmock) |
| 94 | + gtest) |
97 | 95 |
|
98 | 96 | set(test_data_destination_root_directory $<TARGET_FILE_DIR:${dummy_testee_target}>) |
99 | 97 |
|
@@ -130,9 +128,40 @@ add_test_target(TARGET ocos_test |
130 | 128 | LIBRARIES ortcustomops ${ocos_libraries}) |
131 | 129 | target_compile_definitions(ocos_test PRIVATE ${OCOS_COMPILE_DEFINITIONS}) |
132 | 130 |
|
| 131 | +if (OCOS_ENABLE_C_API) |
| 132 | + file(GLOB pp_api_TEST_SRC |
| 133 | + "${TEST_SRC_DIR}/pp_api_test/*.c" |
| 134 | + "${TEST_SRC_DIR}/pp_api_test/*.cc" |
| 135 | + "${TEST_SRC_DIR}/pp_api_test/*.h") |
| 136 | + |
| 137 | + add_test_target(TARGET pp_api_test |
| 138 | + TEST_SOURCES ${pp_api_TEST_SRC} |
| 139 | + LIBRARIES onnxruntime_extensions ${ocos_libraries} |
| 140 | + TEST_DATA_DIRECTORIES ${TEST_SRC_DIR}/data) |
| 141 | + |
| 142 | + target_compile_definitions(pp_api_test PRIVATE ${OCOS_COMPILE_DEFINITIONS}) |
| 143 | + target_include_directories(pp_api_test PRIVATE |
| 144 | + ${PROJECT_SOURCE_DIR}/ |
| 145 | + "$<TARGET_PROPERTY:ortcustomops,INTERFACE_INCLUDE_DIRECTORIES>" |
| 146 | + "$<TARGET_PROPERTY:ocos_operators,INTERFACE_INCLUDE_DIRECTORIES>") |
| 147 | + |
| 148 | + if (ORTX_TEST_DATA2) |
| 149 | + file(TO_NATIVE_PATH "${ORTX_TEST_DATA2}/tests/data2" _TEST_DATA2) |
| 150 | + add_custom_command(TARGET pp_api_test POST_BUILD |
| 151 | + COMMAND ${CMAKE_COMMAND} -E create_symlink ${_TEST_DATA2} ${onnxruntime_extensions_BINARY_DIR}/data2) |
| 152 | + endif() |
| 153 | +endif() |
| 154 | + |
| 155 | + |
133 | 156 | # -- shared test (needs onnxruntime) -- |
134 | | -SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH) |
135 | | -find_library(ONNXRUNTIME onnxruntime HINTS "${ONNXRUNTIME_LIB_DIR}") |
| 157 | +# avoid blindling searching for onnxruntime library |
| 158 | +# wbhich leads to a unpredictable result |
| 159 | +if (NOT ONNXRUNTIME_LIB_DIR) |
| 160 | + set(ONNXRUNTIME "ONNXRUNTIME-NOTFOUND") |
| 161 | +else() |
| 162 | + SET(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY BOTH) |
| 163 | + find_library(ONNXRUNTIME onnxruntime HINTS "${ONNXRUNTIME_LIB_DIR}") |
| 164 | +endif() |
136 | 165 |
|
137 | 166 | if("${ONNXRUNTIME}" STREQUAL "ONNXRUNTIME-NOTFOUND") |
138 | 167 | message(WARNING "The prebuilt onnxruntime library was not found, extensions_test will be skipped.") |
@@ -197,25 +226,10 @@ else() |
197 | 226 | COMMAND ${CMAKE_COMMAND} -E copy_if_different ${ONNXRUNTIME} ${CMAKE_BINARY_DIR}/lib |
198 | 227 | ) |
199 | 228 | endif() |
200 | | - endblock() |
201 | | - |
202 | | - if (OCOS_ENABLE_C_API) |
203 | | - file(GLOB pp_api_TEST_SRC |
204 | | - "${TEST_SRC_DIR}/pp_api_test/*.c" |
205 | | - "${TEST_SRC_DIR}/pp_api_test/*.cc" |
206 | | - "${TEST_SRC_DIR}/pp_api_test/*.h") |
207 | | - |
208 | | - add_test_target(TARGET pp_api_test |
209 | | - TEST_SOURCES ${pp_api_TEST_SRC} |
210 | | - LIBRARIES onnxruntime_extensions ${ocos_libraries} |
211 | | - TEST_DATA_DIRECTORIES ${TEST_SRC_DIR}/data) |
212 | | - |
213 | | - target_compile_definitions(pp_api_test PRIVATE ${OCOS_COMPILE_DEFINITIONS}) |
214 | | - target_include_directories(pp_api_test PRIVATE |
215 | | - ${PROJECT_SOURCE_DIR}/ |
216 | | - "$<TARGET_PROPERTY:ortcustomops,INTERFACE_INCLUDE_DIRECTORIES>" |
217 | | - "$<TARGET_PROPERTY:ocos_operators,INTERFACE_INCLUDE_DIRECTORIES>") |
218 | | - endif() |
219 | | -endif() |
220 | 229 |
|
| 230 | + if (OCOS_ENABLE_C_API) |
| 231 | + # avoid copying the same data directory at the same time. |
| 232 | + add_dependencies(extensions_test pp_api_test) |
| 233 | + endif() |
| 234 | + endblock() |
221 | 235 | endif() |
0 commit comments