Files
lammps/unittest/utils/CMakeLists.txt
2025-04-15 22:11:44 -04:00

59 lines
2.3 KiB
CMake

# -*- CMake -*- file for tests of utily functions and classes in LAMMPS
add_executable(test_tokenizer test_tokenizer.cpp)
target_link_libraries(test_tokenizer PRIVATE lammps GTest::GMockMain)
add_test(NAME Tokenizer COMMAND test_tokenizer)
add_executable(test_mempool test_mempool.cpp)
target_link_libraries(test_mempool PRIVATE lammps GTest::GMockMain)
add_test(NAME MemPool COMMAND test_mempool)
add_executable(test_lmptype test_lmptype.cpp)
target_link_libraries(test_lmptype PRIVATE lammps GTest::GMockMain)
add_test(NAME LmpType COMMAND test_lmptype)
add_executable(test_argutils test_argutils.cpp)
target_link_libraries(test_argutils PRIVATE lammps GTest::GMockMain)
add_test(NAME ArgUtils COMMAND test_argutils)
add_executable(test_utils test_utils.cpp)
target_link_libraries(test_utils PRIVATE lammps GTest::GMockMain)
add_test(NAME Utils COMMAND test_utils)
add_executable(test_platform test_platform.cpp)
target_link_libraries(test_platform PRIVATE lammps GTest::GMockMain)
add_test(NAME Platform COMMAND test_platform)
if(PKG_LEPTON)
add_executable(test_lepton test_lepton.cpp)
target_link_libraries(test_lepton PRIVATE lepton lammps GTest::GMockMain)
add_test(NAME Lepton COMMAND test_lepton)
endif()
set_tests_properties(Utils Platform PROPERTIES
ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
if(BUILD_SHARED_LIBS)
enable_language(C)
add_library(testsharedobj MODULE testshared.c)
set_target_properties(testsharedobj PROPERTIES PREFIX "" WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
add_library(testsharedlib SHARED testshared.c)
set_target_properties(testsharedlib PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
add_dependencies(test_platform testsharedobj testsharedlib)
target_compile_definitions(test_platform PRIVATE TEST_SHARED_LOAD=1
TEST_SHARED_LIB=$<TARGET_FILE:testsharedlib>
TEST_SHARED_OBJ=$<TARGET_FILE:testsharedobj>)
endif()
add_executable(test_fmtlib test_fmtlib.cpp)
target_link_libraries(test_fmtlib PRIVATE lammps GTest::GMockMain)
add_test(NAME FmtLib COMMAND test_fmtlib)
add_executable(test_json test_json.cpp)
target_link_libraries(test_json PRIVATE lammps GTest::GMockMain)
add_test(NAME JSON COMMAND test_json)
add_executable(test_math_eigen_impl test_math_eigen_impl.cpp)
target_include_directories(test_math_eigen_impl PRIVATE ${LAMMPS_SOURCE_DIR})
add_test(NAME MathEigen COMMAND test_math_eigen_impl 10 5)