Use multi-config compatible way to integrate googletest for unit testing
This commit is contained in:
@ -1,81 +0,0 @@
|
||||
message(STATUS "Downloading and building Google Test library")
|
||||
|
||||
if(CMAKE_BUILD_TYPE STREQUAL "Debug")
|
||||
set(GTEST_LIB_POSTFIX d)
|
||||
else()
|
||||
set(GTEST_LIB_POSTFIX)
|
||||
endif()
|
||||
|
||||
include(ExternalProject)
|
||||
set(GTEST_URL "https://github.com/google/googletest/archive/release-1.10.0.tar.gz" CACHE STRING "URL for GTest tarball")
|
||||
set(GTEST_MD5 "ecd1fa65e7de707cd5c00bdac56022cd" CACHE STRING "MD5 checksum of GTest tarball")
|
||||
mark_as_advanced(GTEST_URL)
|
||||
mark_as_advanced(GTEST_MD5)
|
||||
ExternalProject_Add(googletest
|
||||
URL ${GTEST_URL}
|
||||
URL_MD5 ${GTEST_MD5}
|
||||
SOURCE_DIR "${CMAKE_BINARY_DIR}/gtest-src"
|
||||
BINARY_DIR "${CMAKE_BINARY_DIR}/gtest-build"
|
||||
CMAKE_ARGS ${CMAKE_REQUEST_PIC} ${CMAKE_EXTRA_GTEST_OPTS}
|
||||
-DCMAKE_CXX_COMPILER=${CMAKE_CXX_COMPILER}
|
||||
-DCMAKE_INSTALL_PREFIX=<INSTALL_DIR>
|
||||
-DCMAKE_BUILD_TYPE=${CMAKE_BUILD_TYPE}
|
||||
-DCMAKE_MAKE_PROGRAM=${CMAKE_MAKE_PROGRAM}
|
||||
-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}
|
||||
BUILD_BYPRODUCTS <BINARY_DIR>/lib/libgtest${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||
<BINARY_DIR>/lib/libgmock${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||
<BINARY_DIR>/lib/libgtest_main${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||
<BINARY_DIR>/lib/libgmock_main${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX}
|
||||
LOG_DOWNLOAD ON
|
||||
LOG_CONFIGURE ON
|
||||
LOG_BUILD ON
|
||||
INSTALL_COMMAND ""
|
||||
TEST_COMMAND "")
|
||||
|
||||
ExternalProject_Get_Property(googletest SOURCE_DIR)
|
||||
set(GTEST_INCLUDE_DIR ${SOURCE_DIR}/googletest/include)
|
||||
set(GMOCK_INCLUDE_DIR ${SOURCE_DIR}/googlemock/include)
|
||||
|
||||
# workaround for CMake 3.10 on ubuntu 18.04
|
||||
file(MAKE_DIRECTORY ${GTEST_INCLUDE_DIR})
|
||||
file(MAKE_DIRECTORY ${GMOCK_INCLUDE_DIR})
|
||||
|
||||
ExternalProject_Get_Property(googletest BINARY_DIR)
|
||||
set(GTEST_LIBRARY_PATH ${BINARY_DIR}/lib/libgtest${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
set(GMOCK_LIBRARY_PATH ${BINARY_DIR}/lib/libgmock${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
set(GTEST_MAIN_LIBRARY_PATH ${BINARY_DIR}/lib/libgtest_main${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
set(GMOCK_MAIN_LIBRARY_PATH ${BINARY_DIR}/lib/libgmock_main${GTEST_LIB_POSTFIX}${CMAKE_STATIC_LIBRARY_SUFFIX})
|
||||
|
||||
# Prevent GoogleTest from overriding our compiler/linker options
|
||||
# when building with Visual Studio
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||||
|
||||
find_package(Threads QUIET)
|
||||
|
||||
add_library(GTest::GTest UNKNOWN IMPORTED)
|
||||
set_target_properties(GTest::GTest PROPERTIES
|
||||
IMPORTED_LOCATION ${GTEST_LIBRARY_PATH}
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR}
|
||||
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
|
||||
add_dependencies(GTest::GTest googletest)
|
||||
|
||||
add_library(GTest::GMock UNKNOWN IMPORTED)
|
||||
set_target_properties(GTest::GMock PROPERTIES
|
||||
IMPORTED_LOCATION ${GMOCK_LIBRARY_PATH}
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${GMOCK_INCLUDE_DIR}
|
||||
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
|
||||
add_dependencies(GTest::GMock googletest)
|
||||
|
||||
add_library(GTest::GTestMain UNKNOWN IMPORTED)
|
||||
set_target_properties(GTest::GTestMain PROPERTIES
|
||||
IMPORTED_LOCATION ${GTEST_MAIN_LIBRARY_PATH}
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${GTEST_INCLUDE_DIR}
|
||||
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
|
||||
add_dependencies(GTest::GTestMain googletest)
|
||||
|
||||
add_library(GTest::GMockMain UNKNOWN IMPORTED)
|
||||
set_target_properties(GTest::GMockMain PROPERTIES
|
||||
IMPORTED_LOCATION ${GMOCK_MAIN_LIBRARY_PATH}
|
||||
INTERFACE_INCLUDE_DIRECTORIES ${GMOCK_INCLUDE_DIR}
|
||||
INTERFACE_LINK_LIBRARIES "${CMAKE_THREAD_LIBS_INIT}")
|
||||
add_dependencies(GTest::GMockMain googletest)
|
||||
@ -1,4 +1,38 @@
|
||||
include(GTest)
|
||||
########################################
|
||||
# CMake build for automated testing
|
||||
# This file is part of LAMMPS
|
||||
# Created by Axel Kohlmeyer and Richard Berger
|
||||
########################################
|
||||
# download and build googletest framework
|
||||
message(STATUS "Downloading and building googletest framework")
|
||||
set(GTEST_URL "https://github.com/google/googletest/archive/release-1.11.0.tar.gz" CACHE STRING "URL of googletest source")
|
||||
set(GTEST_MD5 "e8a8df240b6938bb6384155d4c37d937" CACHE STRING "MD5 sum for googletest source")
|
||||
mark_as_advanced(GTEST_URL)
|
||||
mark_as_advanced(GTEST_MD5)
|
||||
set(gtest_force_shared_crt ON CACHE BOOL "" FORCE)
|
||||
|
||||
# workaround for older CMake versions (tested on Ubuntu 18.04 with CMake 3.10)
|
||||
if(CMAKE_VERSION VERSION_LESS 3.14)
|
||||
file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/_deps)
|
||||
file(DOWNLOAD ${GTEST_URL} ${CMAKE_BINARY_DIR}/_deps/googletest.tar.gz EXPECTED_HASH MD5=${GTEST_MD5})
|
||||
execute_process(COMMAND ${CMAKE_COMMAND} -E tar xzf ${CMAKE_BINARY_DIR}/_deps/googletest.tar.gz
|
||||
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}/_deps)
|
||||
file(GLOB GTEST_SOURCE "${CMAKE_BINARY_DIR}/_deps/googletest-*")
|
||||
# sanity check. do not allow to have multiple downloaded and extracted versions of the source
|
||||
list(LENGTH GTEST_SOURCE _num)
|
||||
if(_num GREATER 1)
|
||||
message(FATAL_ERROR "Inconsistent googletest sources. Please delete ${CMAKE_BINARY_DIR}/_deps and re-run cmake")
|
||||
endif()
|
||||
add_subdirectory(${GTEST_SOURCE})
|
||||
else()
|
||||
include(FetchContent)
|
||||
FetchContent_Declare(googletest URL ${GTEST_URL} URL_HASH MD5=${GTEST_MD5})
|
||||
FetchContent_MakeAvailable(googletest)
|
||||
endif()
|
||||
|
||||
########################################
|
||||
# General tests using the LAMMPS executable itself
|
||||
########################################
|
||||
|
||||
# check if we can run the compiled executable and whether it prints
|
||||
# the LAMMPS version header in the output for an empty input
|
||||
@ -26,6 +60,7 @@ set_tests_properties(InvalidFlag PROPERTIES
|
||||
ENVIRONMENT "TSAN_OPTIONS=ignore_noninstrumented_modules=1"
|
||||
PASS_REGULAR_EXPRESSION "ERROR: Invalid command-line argument.*")
|
||||
|
||||
# convenience function for adding tests requiring to be run in parallel with MPI
|
||||
if(BUILD_MPI)
|
||||
function(add_mpi_test)
|
||||
set(MPI_TEST_NUM_PROCS 1)
|
||||
@ -36,12 +71,18 @@ if(BUILD_MPI)
|
||||
set(ARGS ${MPI_TEST_COMMAND})
|
||||
add_test(NAME ${MPI_TEST_NAME}
|
||||
WORKING_DIRECTORY ${MPI_TEST_WORKING_DIRECTORY}
|
||||
COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPI_TEST_NUM_PROCS} ${MPIEXEC_PREFLAGS}
|
||||
${EXECUTABLE} ${MPIEXEC_POSTFLAGS} ${ARGS}
|
||||
)
|
||||
COMMAND ${MPIEXEC_EXECUTABLE} ${MPIEXEC_NUMPROC_FLAG} ${MPI_TEST_NUM_PROCS}
|
||||
${MPIEXEC_PREFLAGS} ${EXECUTABLE} ${MPIEXEC_POSTFLAGS} ${ARGS})
|
||||
endfunction()
|
||||
else()
|
||||
function(add_mpi_test)
|
||||
cmake_parse_arguments(MPI_TEST "" "NAME;NUM_PROCS;WORKING_DIRECTORY" "COMMAND" ${ARGN})
|
||||
message(STATUS "Skipping test ${NAME} on non-MPI compilation")
|
||||
endfunction()
|
||||
endif()
|
||||
|
||||
# incorporate categories of specific tests from subdirectories
|
||||
|
||||
add_subdirectory(utils)
|
||||
add_subdirectory(formats)
|
||||
add_subdirectory(commands)
|
||||
@ -52,6 +93,8 @@ add_subdirectory(python)
|
||||
add_subdirectory(tools)
|
||||
add_subdirectory(force-styles)
|
||||
|
||||
# clang-format support for test sources
|
||||
|
||||
find_package(ClangFormat 8.0)
|
||||
|
||||
if(ClangFormat_FOUND)
|
||||
|
||||
@ -1,24 +1,24 @@
|
||||
|
||||
add_executable(test_library_open test_library_open.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_open PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_open PRIVATE lammps gmock)
|
||||
add_test(LibraryOpen test_library_open)
|
||||
|
||||
add_executable(test_library_commands test_library_commands.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_commands PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_commands PRIVATE lammps gmock)
|
||||
add_test(LibraryCommands test_library_commands)
|
||||
|
||||
add_executable(test_library_external test_library_external.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_external PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_external PRIVATE lammps gmock)
|
||||
add_test(LibraryExternal test_library_external)
|
||||
|
||||
add_executable(test_library_properties test_library_properties.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_properties PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_properties PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_library_properties PRIVATE -DTEST_INPUT_FOLDER=${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_test(LibraryProperties test_library_properties)
|
||||
set_tests_properties(LibraryProperties PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_library_scatter_gather test_library_scatter_gather.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_scatter_gather PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_scatter_gather PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_library_scatter_gather PRIVATE -DTEST_INPUT_FOLDER=${CMAKE_CURRENT_SOURCE_DIR})
|
||||
add_test(LibraryScatterGather test_library_scatter_gather)
|
||||
set_tests_properties(LibraryScatterGather PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
@ -63,13 +63,13 @@ foreach(WITH "JPEG" "PNG" "GZIP" "FFMPEG")
|
||||
endforeach()
|
||||
|
||||
add_executable(test_library_config test_library_config.cpp test_main.cpp)
|
||||
target_link_libraries(test_library_config PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_config PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_library_config PRIVATE ${TEST_CONFIG_DEFS})
|
||||
add_test(LibraryConfig test_library_config)
|
||||
|
||||
if(BUILD_MPI)
|
||||
add_executable(test_library_mpi test_library_mpi.cpp)
|
||||
target_link_libraries(test_library_mpi PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_library_mpi PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_library_mpi PRIVATE ${TEST_CONFIG_DEFS})
|
||||
add_mpi_test(NAME LibraryMPI NUM_PROCS 4 COMMAND $<TARGET_FILE:test_library_mpi>)
|
||||
endif()
|
||||
|
||||
@ -26,19 +26,19 @@ add_executable(test_simple_commands test_simple_commands.cpp)
|
||||
if(PKG_PLUGIN)
|
||||
add_dependencies(test_simple_commands plugins)
|
||||
endif()
|
||||
target_link_libraries(test_simple_commands PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_simple_commands PRIVATE lammps gmock)
|
||||
add_test(NAME SimpleCommands COMMAND test_simple_commands WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_lattice_region test_lattice_region.cpp)
|
||||
target_link_libraries(test_lattice_region PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_lattice_region PRIVATE lammps gmock)
|
||||
add_test(NAME LatticeRegion COMMAND test_lattice_region WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_groups test_groups.cpp)
|
||||
target_link_libraries(test_groups PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_groups PRIVATE lammps gmock)
|
||||
add_test(NAME Groups COMMAND test_groups WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_variables test_variables.cpp)
|
||||
target_link_libraries(test_variables PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_variables PRIVATE lammps gmock)
|
||||
add_test(NAME Variables COMMAND test_variables WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_kim_commands test_kim_commands.cpp)
|
||||
@ -49,17 +49,17 @@ if(KIM_EXTRA_UNITTESTS)
|
||||
message(FATAL_ERROR "CURL not found. Enabling KIM extra unit tests requires to have libcurl installed.")
|
||||
endif()
|
||||
endif()
|
||||
target_link_libraries(test_kim_commands PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_kim_commands PRIVATE lammps gmock)
|
||||
add_test(NAME KimCommands COMMAND test_kim_commands WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_reset_ids test_reset_ids.cpp)
|
||||
target_compile_definitions(test_reset_ids PRIVATE -DTEST_INPUT_FOLDER=${CMAKE_CURRENT_SOURCE_DIR})
|
||||
target_link_libraries(test_reset_ids PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_reset_ids PRIVATE lammps gmock)
|
||||
add_test(NAME ResetIDs COMMAND test_reset_ids WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
if(BUILD_MPI)
|
||||
add_executable(test_mpi_load_balancing test_mpi_load_balancing.cpp)
|
||||
target_link_libraries(test_mpi_load_balancing PRIVATE lammps GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_mpi_load_balancing PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_mpi_load_balancing PRIVATE ${TEST_CONFIG_DEFS})
|
||||
add_mpi_test(NAME MPILoadBalancing NUM_PROCS 4 COMMAND $<TARGET_FILE:test_mpi_load_balancing>)
|
||||
endif()
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
|
||||
add_executable(test_lammps_class test_lammps_class.cpp)
|
||||
target_link_libraries(test_lammps_class PRIVATE lammps GTest::GMockMain GTest::GTest GTest::GMock)
|
||||
target_link_libraries(test_lammps_class PRIVATE lammps gmock_main)
|
||||
add_test(LammpsClass test_lammps_class)
|
||||
set_tests_properties(LammpsClass PROPERTIES ENVIRONMENT "OMP_NUM_THREADS=1")
|
||||
|
||||
add_executable(test_input_class test_input_class.cpp)
|
||||
target_link_libraries(test_input_class PRIVATE lammps GTest::GTest GTest::GTestMain)
|
||||
target_link_libraries(test_input_class PRIVATE lammps gtest_main)
|
||||
add_test(InputClass test_input_class)
|
||||
|
||||
add_executable(test_error_class test_error_class.cpp)
|
||||
target_link_libraries(test_error_class PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_error_class PRIVATE lammps gmock)
|
||||
add_test(ErrorClass test_error_class)
|
||||
|
||||
@ -26,7 +26,7 @@ set(TEST_INPUT_FOLDER ${CMAKE_CURRENT_SOURCE_DIR}/tests)
|
||||
add_library(style_tests STATIC yaml_writer.cpp error_stats.cpp test_config_reader.cpp test_main.cpp)
|
||||
target_compile_definitions(style_tests PRIVATE -DTEST_INPUT_FOLDER=${TEST_INPUT_FOLDER})
|
||||
target_include_directories(style_tests PRIVATE ${LAMMPS_SOURCE_DIR})
|
||||
target_link_libraries(style_tests PUBLIC GTest::GTest GTest::GMock Yaml::Yaml lammps)
|
||||
target_link_libraries(style_tests PUBLIC gmock Yaml::Yaml lammps)
|
||||
if(BUILD_MPI)
|
||||
target_link_libraries(style_tests PUBLIC MPI::MPI_CXX)
|
||||
else()
|
||||
@ -43,7 +43,7 @@ endif()
|
||||
# unit test for error stats class
|
||||
add_executable(test_error_stats test_error_stats.cpp)
|
||||
target_include_directories(test_error_stats PRIVATE ${CMAKE_CURRENT_SOURCE_DIR} ${LAMMPS_SOURCE_DIR})
|
||||
target_link_libraries(test_error_stats PRIVATE GTest::GTestMain GTest::GTest)
|
||||
target_link_libraries(test_error_stats PRIVATE gtest_main)
|
||||
add_test(NAME ErrorStats COMMAND test_error_stats)
|
||||
|
||||
# pair style tester
|
||||
|
||||
@ -1,44 +1,44 @@
|
||||
|
||||
add_executable(test_atom_styles test_atom_styles.cpp)
|
||||
target_link_libraries(test_atom_styles PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_atom_styles PRIVATE lammps gmock)
|
||||
add_test(NAME AtomStyles COMMAND test_atom_styles WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_image_flags test_image_flags.cpp)
|
||||
target_link_libraries(test_image_flags PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_image_flags PRIVATE lammps gmock)
|
||||
add_test(NAME ImageFlags COMMAND test_image_flags WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_molecule_file test_molecule_file.cpp)
|
||||
target_link_libraries(test_molecule_file PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_molecule_file PRIVATE lammps gmock)
|
||||
add_test(NAME MoleculeFile COMMAND test_molecule_file WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_pair_unit_convert test_pair_unit_convert.cpp)
|
||||
target_link_libraries(test_pair_unit_convert PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_pair_unit_convert PRIVATE lammps gmock)
|
||||
add_test(NAME PairUnitConvert COMMAND test_pair_unit_convert WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(PairUnitConvert PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_potential_file_reader test_potential_file_reader.cpp)
|
||||
target_link_libraries(test_potential_file_reader PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_potential_file_reader PRIVATE lammps gmock)
|
||||
add_test(NAME PotentialFileReader COMMAND test_potential_file_reader WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(PotentialFileReader PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
if(PKG_MANYBODY)
|
||||
add_executable(test_eim_potential_file_reader test_eim_potential_file_reader.cpp)
|
||||
target_link_libraries(test_eim_potential_file_reader PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_eim_potential_file_reader PRIVATE lammps gmock)
|
||||
add_test(NAME EIMPotentialFileReader COMMAND test_eim_potential_file_reader WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(EIMPotentialFileReader PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
endif()
|
||||
|
||||
add_executable(test_text_file_reader test_text_file_reader.cpp)
|
||||
target_link_libraries(test_text_file_reader PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_text_file_reader PRIVATE lammps gmock)
|
||||
add_test(NAME TextFileReader COMMAND test_text_file_reader WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(TextFileReader PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_file_operations test_file_operations.cpp)
|
||||
target_link_libraries(test_file_operations PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_file_operations PRIVATE lammps gmock)
|
||||
add_test(NAME FileOperations COMMAND test_file_operations WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
|
||||
add_executable(test_dump_atom test_dump_atom.cpp)
|
||||
target_link_libraries(test_dump_atom PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_atom PRIVATE lammps gmock)
|
||||
add_test(NAME DumpAtom COMMAND test_dump_atom WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(DumpAtom PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
@ -46,19 +46,19 @@ if(PKG_COMPRESS)
|
||||
find_program(GZIP_BINARY NAMES gzip REQUIRED)
|
||||
|
||||
add_executable(test_dump_atom_compressed test_dump_atom_compressed.cpp compressed_dump_test_main.cpp)
|
||||
target_link_libraries(test_dump_atom_compressed PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_atom_compressed PRIVATE lammps gmock)
|
||||
|
||||
add_executable(test_dump_custom_compressed test_dump_custom_compressed.cpp compressed_dump_test_main.cpp)
|
||||
target_link_libraries(test_dump_custom_compressed PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_custom_compressed PRIVATE lammps gmock)
|
||||
|
||||
add_executable(test_dump_cfg_compressed test_dump_cfg_compressed.cpp compressed_dump_test_main.cpp)
|
||||
target_link_libraries(test_dump_cfg_compressed PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_cfg_compressed PRIVATE lammps gmock)
|
||||
|
||||
add_executable(test_dump_local_compressed test_dump_local_compressed.cpp compressed_dump_test_main.cpp)
|
||||
target_link_libraries(test_dump_local_compressed PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_local_compressed PRIVATE lammps gmock)
|
||||
|
||||
add_executable(test_dump_xyz_compressed test_dump_xyz_compressed.cpp compressed_dump_test_main.cpp)
|
||||
target_link_libraries(test_dump_xyz_compressed PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_xyz_compressed PRIVATE lammps gmock)
|
||||
|
||||
add_test(NAME DumpAtomGZ COMMAND test_dump_atom_compressed gz WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(DumpAtomGZ PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR};COMPRESS_BINARY=${GZIP_BINARY}")
|
||||
@ -98,17 +98,17 @@ if(PKG_COMPRESS)
|
||||
endif()
|
||||
|
||||
add_executable(test_dump_custom test_dump_custom.cpp)
|
||||
target_link_libraries(test_dump_custom PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_custom PRIVATE lammps gmock)
|
||||
add_test(NAME DumpCustom COMMAND test_dump_custom WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(DumpCustom PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_dump_cfg test_dump_cfg.cpp)
|
||||
target_link_libraries(test_dump_cfg PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_cfg PRIVATE lammps gmock)
|
||||
add_test(NAME DumpCfg COMMAND test_dump_cfg WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(DumpCfg PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_dump_local test_dump_local.cpp)
|
||||
target_link_libraries(test_dump_local PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_dump_local PRIVATE lammps gmock)
|
||||
add_test(NAME DumpLocal COMMAND test_dump_local WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR})
|
||||
set_tests_properties(DumpLocal PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
|
||||
@ -25,11 +25,11 @@ if(CMAKE_Fortran_COMPILER)
|
||||
add_library(flammps STATIC ${LAMMPS_FORTRAN_MODULE})
|
||||
|
||||
add_executable(test_fortran_create wrap_create.cpp test_fortran_create.f90)
|
||||
target_link_libraries(test_fortran_create PRIVATE flammps lammps MPI::MPI_Fortran GTest::GTest GTest::GTestMain)
|
||||
target_link_libraries(test_fortran_create PRIVATE flammps lammps MPI::MPI_Fortran gtest_main)
|
||||
add_test(FortranOpen test_fortran_create)
|
||||
|
||||
add_executable(test_fortran_commands wrap_commands.cpp test_fortran_commands.f90)
|
||||
target_link_libraries(test_fortran_commands PRIVATE flammps lammps MPI::MPI_Fortran GTest::GTest GTest::GTestMain)
|
||||
target_link_libraries(test_fortran_commands PRIVATE flammps lammps MPI::MPI_Fortran gtest_main)
|
||||
add_test(FortranCommands test_fortran_commands)
|
||||
else()
|
||||
message(STATUS "Skipping Tests for the LAMMPS Fortran Module: no Fortran compiler")
|
||||
|
||||
@ -21,7 +21,7 @@ else()
|
||||
endif()
|
||||
|
||||
add_executable(test_python_package test_python_package.cpp)
|
||||
target_link_libraries(test_python_package PRIVATE lammps GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_python_package PRIVATE lammps gmock)
|
||||
target_compile_definitions(test_python_package PRIVATE -DTEST_INPUT_FOLDER=${TEST_INPUT_FOLDER})
|
||||
# this requires CMake 3.12. don't care to add backward compatibility for this.
|
||||
if(Python3_Development_FOUND)
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
add_executable(test_tokenizer test_tokenizer.cpp)
|
||||
target_link_libraries(test_tokenizer PRIVATE lammps GTest::GMockMain GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_tokenizer PRIVATE lammps gmock_main)
|
||||
add_test(Tokenizer test_tokenizer)
|
||||
|
||||
add_executable(test_mempool test_mempool.cpp)
|
||||
target_link_libraries(test_mempool PRIVATE lammps GTest::GMockMain GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_mempool PRIVATE lammps gmock_main)
|
||||
add_test(MemPool test_mempool)
|
||||
|
||||
add_executable(test_argutils test_argutils.cpp)
|
||||
target_link_libraries(test_argutils PRIVATE lammps GTest::GMockMain GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_argutils PRIVATE lammps gmock_main)
|
||||
add_test(ArgUtils test_argutils)
|
||||
|
||||
add_executable(test_utils test_utils.cpp)
|
||||
target_link_libraries(test_utils PRIVATE lammps GTest::GMockMain GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_utils PRIVATE lammps gmock_main)
|
||||
add_test(Utils test_utils)
|
||||
set_tests_properties(Utils PROPERTIES ENVIRONMENT "LAMMPS_POTENTIALS=${LAMMPS_POTENTIALS_DIR}")
|
||||
|
||||
add_executable(test_fmtlib test_fmtlib.cpp)
|
||||
target_link_libraries(test_fmtlib PRIVATE lammps GTest::GMockMain GTest::GMock GTest::GTest)
|
||||
target_link_libraries(test_fmtlib PRIVATE lammps gmock_main)
|
||||
add_test(FmtLib test_fmtlib)
|
||||
|
||||
add_executable(test_math_eigen_impl test_math_eigen_impl.cpp)
|
||||
|
||||
Reference in New Issue
Block a user