Commit 95f6ab29 authored by Dennis Gläser's avatar Dennis Gläser
Browse files

Merge branch 'feature/rename-cmake-functions' into 'master'

Feature/rename cmake functions

See merge request tools/frackit!205
parents fb57a0e8 2cc46a9c
Pipeline #2842 passed with stages
in 9 minutes and 56 seconds
frackit_add_test(NAME example1
SOURCES example1.cc
LABELS example
CMD_ARGS 5)
frackit_register_test(NAME example1
SOURCES example1.cc
LABELS example
CMD_ARGS 5)
frackit_symlink_or_copy(FILES example1.py)
frackit_link_from_build_dir(FILES example1.py)
frackit_add_test(NAME example2
SOURCES example2.cc
LABELS example
CMD_ARGS 5)
frackit_register_test(NAME example2
SOURCES example2.cc
LABELS example
CMD_ARGS 5)
frackit_symlink_or_copy(FILES example2.py)
frackit_link_from_build_dir(FILES example2.py)
frackit_add_test(NAME example3
SOURCES example3.cc
COMPILE_DEFINITIONS BREPFILE="layers.brep"
LABELS example
CMD_ARGS 3)
frackit_register_test(NAME example3
SOURCES example3.cc
COMPILE_DEFINITIONS BREPFILE="layers.brep"
LABELS example
CMD_ARGS 3)
frackit_symlink_or_copy(FILES example3.py layers.brep)
frackit_link_from_build_dir(FILES example3.py layers.brep)
frackit_add_test(NAME example4
SOURCES example4.cc
LABELS example
COMMAND ./example4
CMD_ARGS 5)
frackit_symlink_or_copy(FILES example4.py)
frackit_register_test(NAME example4
SOURCES example4.cc
LABELS example
COMMAND ./example4
CMD_ARGS 5)
frackit_link_from_build_dir(FILES example4.py)
# Introduce a target that triggers the building of all applications
add_custom_target(build_applications)
# processes labels passed to frackit_add_application
function(frackit_declare_application_label)
include(CMakeParseArguments)
set(OPTIONS)
set(SINGLEARGS)
set(MULTIARGS LABELS)
cmake_parse_arguments(arg "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
if( (DEFINED arg_UNPARSED_ARGUMENTS) AND NOT ( arg_UNPARSED_ARGUMENTS STREQUAL "" ) )
message(FATAL_ERROR "Unhandled extra arguments given to frackit_declare_application_label(): "
"<${arg_UNPARSED_ARGUMENTS}>")
endif()
foreach(label IN LISTS arg_LABELS)
# Make sure the label is not empty, and does not contain any funny
# characters, in particular regex characters
if(NOT (label MATCHES "[-_0-9a-zA-Z]+"))
message(FATAL_ERROR "Refusing to add label \"${label}\" since it is "
"empty or contains funny characters (characters other than "
"alphanumeric ones and \"-\" or \"_\"; the intent of this restriction "
"is to make construction of the argument to \"ctest -L\" easier")
endif()
set(target "build_${label}_applications")
if(NOT TARGET "${target}")
add_custom_target("${target}")
endif()
endforeach()
endfunction(frackit_declare_application_label)
# function to add an application
function(frackit_add_application)
include(CMakeParseArguments)
set(SINGLEARGS NAME TARGET TIMEOUT)
set(MULTIARGS SOURCES COMPILE_DEFINITIONS COMPILE_FLAGS CMD_ARGS COMMAND CMAKE_GUARD LABELS)
cmake_parse_arguments(ADDAPPL "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
# Check whether the parser produced any errors
if(ADDAPPL_UNPARSED_ARGUMENTS)
message(WARNING "Unrecognized arguments ('${ADDAPPL_UNPARSED_ARGUMENTS}') for frackit_add_application!")
endif()
# Check input for validity and apply defaults
if(NOT ADDAPPL_SOURCES AND NOT ADDAPPL_TARGET)
message(FATAL_ERROR "You need to specify either the SOURCES or the TARGET option for frackit_add_application!")
endif()
if(ADDAPPL_SOURCES AND ADDAPPL_TARGET)
message(FATAL_ERROR "You cannot specify both SOURCES and TARGET for frackit_add_application")
endif()
if(NOT ADDAPPL_NAME)
message(FATAL_ERROR "You have to define a name for the application!")
endif()
if(NOT ADDAPPL_COMMAND)
set(ADDAPPL_COMMAND ${ADDAPPL_NAME})
endif()
if(NOT ADDAPPL_TIMEOUT)
set(ADDAPPL_TIMEOUT 3600)
endif()
# Add the executable if it is not already present
if(ADDAPPL_SOURCES)
add_executable(${ADDAPPL_NAME} ${ADDAPPL_SOURCES})
target_compile_definitions(${ADDAPPL_NAME} PUBLIC ${ADDAPPL_COMPILE_DEFINITIONS})
target_compile_options(${ADDAPPL_NAME} PUBLIC ${ADDAPPL_COMPILE_FLAGS})
# link OCC library to each application
target_link_libraries(${ADDAPPL_NAME} ${ADDAPPL_LINK_LIBRARIES} ${OCC_LIBS})
set(ADDAPPL_TARGET ${ADDAPPL_NAME})
endif()
# make sure each label exists and its name is acceptable
frackit_declare_application_label(LABELS ${ADDAPPL_LABELS})
# Make sure to exclude the target from all
set_property(TARGET ${ADDAPPL_TARGET} PROPERTY EXCLUDE_FROM_ALL 1)
# Have build_applications and build_${label}_applications depend on the given target in
# order to trigger the build correctly
add_dependencies(build_applications ${ADDAPPL_TARGET})
foreach(label IN LISTS ADDAPPL_LABELS)
add_dependencies(build_${label}_applications ${ADDAPPL_TARGET})
endforeach()
endfunction(frackit_add_application)
# function to create a symbolic link between files in the source and build directories
function(frackit_symlink_or_copy)
function(frackit_link_from_build_dir)
# skip this if source and binary dir are the same
if( ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR} )
......@@ -11,29 +11,35 @@ function(frackit_symlink_or_copy)
include(CMakeParseArguments)
cmake_parse_arguments(ARG "" "DESTINATION" "FILES" ${ARGN})
if (ARG_UNPARSED_ARGUMENTS)
message(WARNING "There were issues parsing your arguments to frackit_symlink_or_copy_to_source)!")
message(WARNING "Unparsed arguments to frackit_link_from_build_dir)!")
endif ()
# handle all given files
# handle files
foreach (f ${ARG_FILES})
# check whether a speficic destination is desired
if (ARG_DESTINATION)
set(destination "${ARG_DESTINATION}/")
set(destination "${ARG_DESTINATION}")
else ()
set(destination "")
endif ()
# On windows, copy instead of linking
# On windows, make copy
if (${CMAKE_SYSTEM_NAME} STREQUAL "Windows")
if(NOT DEFINED FRACKIT_SYMLINK_WARNING)
message(WARNING "Symlinks are not supported on your platform! Doing copies instead.")
message(WARNING "Doing copy instead of symlink!")
set(FRACKIT_SYMLINK_WARNING)
endif()
execute_process(COMMAND ${CMAKE_COMMAND} "-E" "copy" "${CMAKE_CURRENT_SOURCE_DIR}/${f}" "${CMAKE_CURRENT_BINARY_DIR}/${destination}${f}")
execute_process(COMMAND ${CMAKE_COMMAND} "-E" "copy" "${CMAKE_CURRENT_SOURCE_DIR}/${f}" "${CMAKE_CURRENT_BINARY_DIR}/${destination}/${f}")
else ()
# create symlink
execute_process(COMMAND ${CMAKE_COMMAND} "-E" "create_symlink" "${CMAKE_CURRENT_SOURCE_DIR}/${f}" "${CMAKE_CURRENT_BINARY_DIR}/${destination}${f}")
execute_process(COMMAND ${CMAKE_COMMAND} "-E" "create_symlink" "${CMAKE_CURRENT_SOURCE_DIR}/${f}" "${CMAKE_CURRENT_BINARY_DIR}/${destination}/${f}")
endif ()
endforeach ()
endfunction(frackit_link_from_build_dir)
function(frackit_symlink_or_copy)
if(NOT DEFINED FRACKIT_SYMLINK_DEPR_WARNING)
message(WARNING "This function is deprecated. Use frackit_link_from_build_dir instead!")
set(FRACKIT_SYMLINK_DEPR_WARNING)
endif()
frackit_link_from_build_dir(${ARGV})
endfunction(frackit_symlink_or_copy)
# The code in this file has been inspired or copied from the dune-common
# The code in this file has been inspired by the dune-common
# module of the dune project (https://gitlab.dune-project.org/core/dune-common),
# in particular from the following file:
# https://gitlab.dune-project.org/core/dune-common/-/blob/master/cmake/modules/DuneTestMacros.cmake
......@@ -6,60 +6,52 @@
# enable the testing suite on the CMake side.
enable_testing()
# Introduce a target that triggers the building of all tests
# introduce a target that triggers the building of all tests
add_custom_target(build_tests)
# processes labels passed to frackit_add_test
function(frackit_declare_test_label)
# register new label(s)
function(frackit_register_test_labels)
include(CMakeParseArguments)
set(OPTIONS)
set(SINGLEARGS)
set(MULTIARGS LABELS)
cmake_parse_arguments(arg "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
if( (DEFINED arg_UNPARSED_ARGUMENTS) AND NOT ( arg_UNPARSED_ARGUMENTS STREQUAL "" ) )
message(FATAL_ERROR "Unhandled extra arguments given to frackit_declare_test_label(): "
"<${arg_UNPARSED_ARGUMENTS}>")
cmake_parse_arguments(ARG "" "" "LABELS" ${ARGN})
if( (DEFINED ARG_UNPARSED_ARGUMENTS) AND NOT ( ARG_UNPARSED_ARGUMENTS STREQUAL "" ) )
message(WARNING "Unparsed arguments in frackit_register_test_labels(): "
"<${ARG_UNPARSED_ARGUMENTS}>")
endif()
foreach(label IN LISTS arg_LABELS)
# Make sure the label is not empty, and does not contain any funny
# characters, in particular regex characters
if(NOT (label MATCHES "[-_0-9a-zA-Z]+"))
message(FATAL_ERROR "Refusing to add label \"${label}\" since it is "
"empty or contains funny characters (characters other than "
"alphanumeric ones and \"-\" or \"_\"; the intent of this restriction "
"is to make construction of the argument to \"ctest -L\" easier")
foreach(LABEL IN LISTS ARG_LABELS)
if (LABEL STREQUAL "")
message(FATAL_ERROR "Cannot register empty labels")
endif()
set(target "build_${label}_tests")
if(NOT TARGET "${target}")
add_custom_target("${target}")
set(TARGET "build_${LABEL}_tests")
if(NOT TARGET "${TARGET}")
add_custom_target("${TARGET}")
endif()
endforeach()
endfunction(frackit_declare_test_label)
endfunction(frackit_register_test_labels)
# function to add a test
function(frackit_add_test)
# function to register a test
function(frackit_register_test)
include(CMakeParseArguments)
set(SINGLEARGS NAME TARGET TIMEOUT)
set(MULTIARGS SOURCES COMPILE_DEFINITIONS COMPILE_FLAGS CMD_ARGS COMMAND CMAKE_GUARD LABELS)
cmake_parse_arguments(ADDTEST "${OPTIONS}" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
set(MULTIARGS SOURCES COMPILE_DEFINITIONS CMD_ARGS COMMAND LABELS)
cmake_parse_arguments(ADDTEST "" "${SINGLEARGS}" "${MULTIARGS}" ${ARGN})
# Check whether the parser produced any errors
if(ADDTEST_UNPARSED_ARGUMENTS)
message(WARNING "Unrecognized arguments ('${ADDTEST_UNPARSED_ARGUMENTS}') for frackit_add_test!")
message(WARNING "Unparsed arguments ('${ADDTEST_UNPARSED_ARGUMENTS}') for frackit_register_test!")
endif()
# Check input for validity and apply defaults
# catch erroneous argument combos
if(NOT ADDTEST_SOURCES AND NOT ADDTEST_TARGET)
message(FATAL_ERROR "You need to specify either the SOURCES or the TARGET option for frackit_add_test!")
message(FATAL_ERROR "Neither SOURCES nor TARGET was set for frackit_register_test!")
endif()
if(ADDTEST_SOURCES AND ADDTEST_TARGET)
message(FATAL_ERROR "You cannot specify both SOURCES and TARGET for frackit_add_test")
message(FATAL_ERROR "You cannot set both SOURCES and TARGET for frackit_register_test")
endif()
if(NOT ADDTEST_NAME)
message(FATAL_ERROR "You have to define a name for the test!")
endif()
if(NOT ADDTEST_COMMAND)
set(ADDTEST_COMMAND ${ADDTEST_NAME})
endif()
......@@ -78,23 +70,41 @@ function(frackit_add_test)
set(ADDTEST_TARGET ${ADDTEST_NAME})
endif()
# Now add the actual test
# Add the actual test
add_test(NAME ${ADDTEST_NAME} COMMAND "${ADDTEST_COMMAND}" ${ADDTEST_CMD_ARGS})
# Make sure to exclude the target from all
# Exclude the target from all
set_property(TARGET ${ADDTEST_TARGET} PROPERTY EXCLUDE_FROM_ALL 1)
# make sure each label exists and its name is acceptable
frackit_declare_test_label(LABELS ${ADDTEST_LABELS})
frackit_register_test_labels(LABELS ${ADDTEST_LABELS})
# Set the labels on this new test
set_tests_properties(${ADDTEST_NAME} PROPERTIES LABELS "${ADDTEST_LABELS}")
# Have build_tests and build_${label}_tests depend on the given target in
# order to trigger the build correctly
# register test within the custom targets
add_dependencies(build_tests ${ADDTEST_TARGET})
foreach(label IN LISTS ADDTEST_LABELS)
add_dependencies(build_${label}_tests ${ADDTEST_TARGET})
endforeach()
# Set the labels on the test
set_tests_properties(${ADDTEST_NAME} PROPERTIES LABELS "${ADDTEST_LABELS}")
endfunction(frackit_register_test)
#######################
# deprecated functions
function(frackit_declare_test_label)
if(NOT DEFINED FRACKIT_TEST_LABEL_DEPR_WARNING)
message(WARNING "This function is deprecated. Use frackit_register_test_labels instead!")
set(FRACKIT_TEST_LABEL_DEPR_WARNING)
endif()
frackit_register_test_labels(${ARGV})
endfunction(frackit_declare_test_label)
function(frackit_add_test)
if(NOT DEFINED FRACKIT_TEST_DEPR_WARNING)
message(WARNING "This function is deprecated. Use frackit_register_test instead!")
set(FRACKIT_TEST_DEPR_WARNING)
endif()
frackit_register_test(${ARGV})
endfunction(frackit_add_test)
......@@ -4,7 +4,7 @@ if (FRACKIT_ENABLE_PYTHONBINDINGS)
# modify contents (version etc) in setup file and symlink
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/setup.py.in
${CMAKE_CURRENT_SOURCE_DIR}/setup.py)
frackit_symlink_or_copy(FILES setup.py)
frackit_link_from_build_dir(FILES setup.py)
# define target for python library
add_custom_target(install_python
......
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_common _common.cc)
add_subdirectory(iterators)
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_entitynetwork _entitynetwork.cc)
target_link_libraries(_entitynetwork PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_iterators _iterators.cc)
target_link_libraries(_iterators PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_geometry _geometry.cc)
target_link_libraries(_geometry PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_io _io.cc)
target_link_libraries(_io PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_occutilities _occutilities.cc)
target_link_libraries(_occutilities PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_precision _precision.cc)
target_link_libraries(_precision PRIVATE ${OCC_LIBS})
frackit_symlink_or_copy(FILES __init__.py)
frackit_link_from_build_dir(FILES __init__.py)
pybind11_add_module(_sampling _sampling.cc)
#############################
# test distance computation #
#############################
frackit_add_test(NAME test_distance_linear SOURCES test_distance_linear.cc LABELS geometry distance)
frackit_add_test(NAME test_distance_disk SOURCES test_distance_disk.cc LABELS geometry distance)
frackit_add_test(NAME test_distancetoboundary SOURCES test_distancetoboundary.cc LABELS geometry distance)
frackit_register_test(NAME test_distance_linear SOURCES test_distance_linear.cc LABELS geometry distance)
frackit_register_test(NAME test_distance_disk SOURCES test_distance_disk.cc LABELS geometry distance)
frackit_register_test(NAME test_distancetoboundary SOURCES test_distancetoboundary.cc LABELS geometry distance)
......@@ -3,32 +3,32 @@
##########################################
# test network constaints (disks)
frackit_add_test(NAME test_constraints_disk
SOURCES test_constraints_disk.cc
LABELS entitynetwork constraints)
frackit_register_test(NAME test_constraints_disk
SOURCES test_constraints_disk.cc
LABELS entitynetwork constraints)
# test network constaints (quads)
frackit_add_test(NAME test_constraints_quads
SOURCES test_constraints_quads.cc
LABELS entitynetwork constraints)
frackit_register_test(NAME test_constraints_quads
SOURCES test_constraints_quads.cc
LABELS entitynetwork constraints)
# test network constaints (cylinder surface)
frackit_add_test(NAME test_constraints_cylindersurface
SOURCES test_constraints_cylindersurface.cc
LABELS entitynetwork constraints)
frackit_register_test(NAME test_constraints_cylindersurface
SOURCES test_constraints_cylindersurface.cc
LABELS entitynetwork constraints)
# test disk network creation (in cylinder)
frackit_add_test(NAME test_generate_disk_network_cylinder
SOURCES test_generate_disk_network_cylinder.cc
LABELS entitynetwork sampling)
frackit_register_test(NAME test_generate_disk_network_cylinder
SOURCES test_generate_disk_network_cylinder.cc
LABELS entitynetwork sampling)
# test disk network creation (in shape from file)
frackit_add_test(NAME test_generate_disk_network_shape
SOURCES test_generate_disk_network_shape.cc
LABELS entitynetwork sampling
COMPILE_DEFINITIONS BREPFILE="${CMAKE_SOURCE_DIR}/test/entitynetwork/layer.brep")
frackit_register_test(NAME test_generate_disk_network_shape
SOURCES test_generate_disk_network_shape.cc
LABELS entitynetwork sampling
COMPILE_DEFINITIONS BREPFILE="${CMAKE_SOURCE_DIR}/test/entitynetwork/layer.brep")
# test entity network classes & corresponding I/O
frackit_add_test(NAME test_entity_network_3d
SOURCES test_entity_network_3d.cc
LABELS entitynetwork)
frackit_register_test(NAME test_entity_network_3d
SOURCES test_entity_network_3d.cc
LABELS entitynetwork)
######################################
# test functionalities of geometries #
######################################
frackit_add_test(NAME test_point SOURCES test_point.cc LABELS geometry)
frackit_add_test(NAME test_vector SOURCES test_vector.cc LABELS geometry)
frackit_add_test(NAME test_direction SOURCES test_direction.cc LABELS geometry)
frackit_add_test(NAME test_plane SOURCES test_plane.cc LABELS geometry)
frackit_add_test(NAME test_circle SOURCES test_circle.cc LABELS geometry)
frackit_add_test(NAME test_cylindricalsurface SOURCES test_cylindricalsurface.cc LABELS geometry)
frackit_add_test(NAME test_cylinder SOURCES test_cylinder.cc LABELS geometry)
frackit_add_test(NAME test_hollowcylinder SOURCES test_hollowcylinder.cc LABELS geometry)
frackit_add_test(NAME test_disk SOURCES test_disk.cc LABELS geometry)
frackit_add_test(NAME test_ellipsearc SOURCES test_ellipsearc.cc LABELS geometry)
frackit_add_test(NAME test_geometryname SOURCES test_geometryname.cc LABELS geometry)
frackit_add_test(NAME test_triangle SOURCES test_triangle.cc LABELS geometry)
frackit_add_test(NAME test_polygon SOURCES test_polygon.cc LABELS geometry)
frackit_add_test(NAME test_quadrilateral SOURCES test_quadrilateral.cc LABELS geometry)
frackit_add_test(NAME test_box SOURCES test_box.cc LABELS geometry)
frackit_add_test(NAME test_boundingbox SOURCES test_boundingbox.cc LABELS geometry)
frackit_add_test(NAME test_sphere SOURCES test_sphere.cc LABELS geometry)
frackit_add_test(NAME test_name SOURCES test_name.cc LABELS geometry)
frackit_register_test(NAME test_point SOURCES test_point.cc LABELS geometry)
frackit_register_test(NAME test_vector SOURCES test_vector.cc LABELS geometry)
frackit_register_test(NAME test_direction SOURCES test_direction.cc LABELS geometry)
frackit_register_test(NAME test_plane SOURCES test_plane.cc LABELS geometry)
frackit_register_test(NAME test_circle SOURCES test_circle.cc LABELS geometry)
frackit_register_test(NAME test_cylindricalsurface SOURCES test_cylindricalsurface.cc LABELS geometry)
frackit_register_test(NAME test_cylinder SOURCES test_cylinder.cc LABELS geometry)
frackit_register_test(NAME test_hollowcylinder SOURCES test_hollowcylinder.cc LABELS geometry)
frackit_register_test(NAME test_disk SOURCES test_disk.cc LABELS geometry)
frackit_register_test(NAME test_ellipsearc SOURCES test_ellipsearc.cc LABELS geometry)
frackit_register_test(NAME test_geometryname SOURCES test_geometryname.cc LABELS geometry)
frackit_register_test(NAME test_triangle SOURCES test_triangle.cc LABELS geometry)
frackit_register_test(NAME test_polygon SOURCES test_polygon.cc LABELS geometry)
frackit_register_test(NAME test_quadrilateral SOURCES test_quadrilateral.cc LABELS geometry)
frackit_register_test(NAME test_box SOURCES test_box.cc LABELS geometry)
frackit_register_test(NAME test_boundingbox SOURCES test_boundingbox.cc LABELS geometry)
frackit_register_test(NAME test_sphere SOURCES test_sphere.cc LABELS geometry)
frackit_register_test(NAME test_name SOURCES test_name.cc LABELS geometry)
......@@ -3,86 +3,86 @@
###################################################
# bounding box intersection
frackit_add_test(NAME test_bbox_intersection
SOURCES test_bbox_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_bbox_intersection
SOURCES test_bbox_intersection.cc
LABELS intersection)
# intersection angles
frackit_add_test(NAME test_intersectionangle
SOURCES test_intersectionangle.cc
LABELS intersection)
frackit_register_test(NAME test_intersectionangle
SOURCES test_intersectionangle.cc
LABELS intersection)
# segment - segment
frackit_add_test(NAME test_segment_segment_intersection
SOURCES test_segment_segment_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_segment_segment_intersection
SOURCES test_segment_segment_intersection.cc
LABELS intersection)
# plane - plane
frackit_add_test(NAME test_plane_plane_intersection
SOURCES test_plane_plane_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_plane_plane_intersection
SOURCES test_plane_plane_intersection.cc
LABELS intersection)
# disk - line
frackit_add_test(NAME test_disk_line_intersection
SOURCES test_disk_line_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_disk_line_intersection
SOURCES test_disk_line_intersection.cc
LABELS intersection)
# quadrilateral - line
frackit_add_test(NAME test_quad_line_intersection
SOURCES test_quad_line_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_quad_line_intersection
SOURCES test_quad_line_intersection.cc
LABELS intersection)
# disk - disk
frackit_add_test(NAME test_disk_disk_intersection
SOURCES test_disk_disk_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_disk_disk_intersection
SOURCES test_disk_disk_intersection.cc
LABELS intersection)
# quadrilateral - quadrilateral
frackit_add_test(NAME test_quad_quad_intersection
SOURCES test_quad_quad_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_quad_quad_intersection
SOURCES test_quad_quad_intersection.cc
LABELS intersection)
# polygon - polygon
frackit_add_test(NAME test_polygon_polygon_intersection
SOURCES test_polygon_polygon_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_polygon_polygon_intersection
SOURCES test_polygon_polygon_intersection.cc
LABELS intersection)
# polygon - polygon
frackit_add_test(NAME test_polygon_face_intersection
SOURCES test_polygon_face_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_polygon_face_intersection
SOURCES test_polygon_face_intersection.cc
LABELS intersection)
# polygon - disk
frackit_add_test(NAME test_polygon_disk_intersection
SOURCES test_polygon_disk_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_polygon_disk_intersection
SOURCES test_polygon_disk_intersection.cc
LABELS intersection)
# cylinder surface - disk
frackit_add_test(NAME test_cylindersurface_disk_intersection
SOURCES test_cylindersurface_disk_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_cylindersurface_disk_intersection
SOURCES test_cylindersurface_disk_intersection.cc
LABELS intersection)
# cylinder surface - polygon (tests quadrilateral as well)
frackit_add_test(NAME test_cylindersurface_polygon_intersection
SOURCES test_cylindersurface_polygon_intersection.cc
LABELS intersection)
frackit_register_test(NAME test_cylindersurface_polygon_intersection
SOURCES test_cylindersurface_polygon_intersection.cc
LABELS intersection)