diff --git a/cmake/DARTMacros.cmake b/cmake/DARTMacros.cmake index e721be3c56882..7d0b3994c92e5 100644 --- a/cmake/DARTMacros.cmake +++ b/cmake/DARTMacros.cmake @@ -288,3 +288,103 @@ function(dart_build_tutorial_in_source target) dart_build_target_in_source(${target} ${ARGN}) dart_add_tutorial(${target}) endfunction() + + +# ============================================================================== +# dart_build_tests() +# +function(dart_build_tests) + set(prefix _ARG) + set(options + GLOB_SOURCES + ) + set(oneValueArgs + COMPONENT_NAME + TARGET_PREFIX + TYPE + ) + set(multiValueArgs + INCLUDE_DIRS + LINK_LIBRARIES + SOURCES + ) + cmake_parse_arguments( + "${prefix}" "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN} + ) + + if(NOT _ARG_TARGET_PREFIX) + set(_ARG_TARGET_PREFIX UNIT) + endif() + + if(NOT _ARG_TYPE) + message(FATAL_ERROR "TYPE is not set!") + endif() + + foreach(dep ${_ARG_LINK_LIBRARIES}) + if(NOT TARGET ${dep}) + if(_ARG__ARG_COMPONENT_NAME) + message(WARNING "Skipping tests for component [${_ARG_COMPONENT_NAME}] due to missing component target [${dep}]") + else() + message(WARNING "Skipping tests due to missing component target [${dep}]") + endif() + return() + endif() + endforeach() + + # Glob all the test files + if(_ARG_GLOB_SOURCES) + file(GLOB_RECURSE glob_test_files RELATIVE "${CMAKE_CURRENT_LIST_DIR}" "test_*.cpp") + list(APPEND test_files ${glob_test_files}) + endif() + list(APPEND test_files ${_ARG_SOURCES}) + if(test_files) + list(SORT test_files) + endif() + + foreach(source ${test_files}) + # Set target name + if(_ARG_TARGET_PREFIX) + set(target_name ${_ARG_TARGET_PREFIX}_) + else() + set(target_name ) + endif() + get_filename_component(source_name ${source} NAME_WE) + string(REPLACE "test_" "" source_name ${source_name}) + get_filename_component(source_dir ${source} DIRECTORY) + if(source_dir) + string(REPLACE "/" "_" source_prefix ${source_dir}) + set(target_name "${target_name}${source_prefix}_${source_name}") + else() + set(target_name "${target_name}${source_name}") + endif() + + if(MSVC) + add_executable(${target_name} ${source}) + else() + add_executable(${target_name} EXCLUDE_FROM_ALL ${source}) + endif() + add_test(NAME ${target_name} COMMAND $) + + # Include directories + target_include_directories( + ${target_name} PRIVATE ${_ARG_INCLUDE_DIRS} + ) + + # Link libraries + target_link_libraries(${target_name} PRIVATE gtest gtest_main) + target_link_libraries( + ${target_name} PRIVATE ${_ARG_LINK_LIBRARIES} + ) + if(UNIX) + # gtest requies pthread when compiled on a Unix machine + target_link_libraries(${target_name} PRIVATE pthread) + endif() + + # Add the test target to the list + dart_property_add(DART_${_ARG_TYPE}_TESTS ${target_name}) + + endforeach() + + dart_format_add(${test_files}) + +endfunction() diff --git a/python/tests/unit/dynamics/test_meta_skeleton.py b/python/tests/unit/dynamics/test_meta_skeleton.py index 1965f80f820c4..ccb9f8b1bbe11 100644 --- a/python/tests/unit/dynamics/test_meta_skeleton.py +++ b/python/tests/unit/dynamics/test_meta_skeleton.py @@ -3,7 +3,7 @@ import dartpy as dart -# TODO(JS): Move this to comprehensive category once created +# TODO(JS): Move this to integration category once created def test_basic(): diff --git a/unittests/testKinematics.cpp_ b/unittests/.deprecated/testKinematics.cpp_ similarity index 100% rename from unittests/testKinematics.cpp_ rename to unittests/.deprecated/testKinematics.cpp_ diff --git a/unittests/testLemke.cpp b/unittests/.deprecated/testLemke.cpp similarity index 100% rename from unittests/testLemke.cpp rename to unittests/.deprecated/testLemke.cpp diff --git a/unittests/CMakeLists.txt b/unittests/CMakeLists.txt index 850352dc8de12..da84843418536 100644 --- a/unittests/CMakeLists.txt +++ b/unittests/CMakeLists.txt @@ -74,7 +74,7 @@ endfunction() #=============================================================================== # Usage: -# dart_get_tests("comprehensive" compreshensive_tests) +# dart_get_tests("integration" compreshensive_tests) # foreach(test ${compreshensive_tests}) # message(STATUS "Test: ${test}) # endforeach() @@ -87,7 +87,7 @@ endfunction() include_directories(${CMAKE_CURRENT_SOURCE_DIR}) # We categorize tests as: -# - "comprehensive": high level tests to verify the combination of several +# - "integration": high level tests to verify the combination of several # components are correctly performs together # - "regression": issue wise tests to verify that the GitHub issues are still # fixed even after further changes are made @@ -95,21 +95,21 @@ include_directories(${CMAKE_CURRENT_SOURCE_DIR}) # they performs correctly as expected if(NOT MSVC) # Disabled due to limitied disk space in CI image - add_subdirectory(comprehensive) + add_subdirectory(integration) add_subdirectory(regression) endif() add_subdirectory(unit) # Print tests -dart_get_tests(comprehensive_tests "comprehensive") +dart_get_tests(integration_tests "integration") dart_get_tests(regression_tests "regression") dart_get_tests(unit_tests "unit") if(DART_VERBOSE) message(STATUS "") message(STATUS "[ Tests ]") - foreach(test ${comprehensive_tests}) - message(STATUS "Adding test: comprehensive/${test}") + foreach(test ${integration_tests}) + message(STATUS "Adding test: integration/${test}") endforeach() foreach(test ${regression_tests}) message(STATUS "Adding test: regression/${test}") @@ -118,15 +118,15 @@ if(DART_VERBOSE) message(STATUS "Adding test: unit/${test}") endforeach() else() - list(LENGTH comprehensive_tests comprehensive_tests_len) + list(LENGTH integration_tests integration_tests_len) list(LENGTH regression_tests regression_tests_len) list(LENGTH unit_tests unit_tests_len) math( EXPR tests_len - "${comprehensive_tests_len} + ${regression_tests_len} + ${unit_tests_len}" + "${integration_tests_len} + ${regression_tests_len} + ${unit_tests_len}" ) message(STATUS "Adding ${tests_len} tests (" - "comprehensive: ${comprehensive_tests_len}, " + "integration: ${integration_tests_len}, " "regression: ${regression_tests_len}, " "unit: ${unit_tests_len}" ")" @@ -136,12 +136,12 @@ endif() # Add custom target to build all the tests as a single target add_custom_target( tests - DEPENDS ${comprehensive_tests} ${regression_tests} ${unit_tests} + DEPENDS ${integration_tests} ${regression_tests} ${unit_tests} ) # Add custom target to build all the tests and run the tests add_custom_target(tests_and_run COMMAND ${CMAKE_CTEST_COMMAND} - DEPENDS ${comprehensive_tests} ${regression_tests} ${unit_tests} + DEPENDS ${integration_tests} ${regression_tests} ${unit_tests} ) dart_format_add(GTestUtils.hpp) diff --git a/unittests/comprehensive/CMakeLists.txt b/unittests/comprehensive/CMakeLists.txt deleted file mode 100644 index e4b5e06f966a2..0000000000000 --- a/unittests/comprehensive/CMakeLists.txt +++ /dev/null @@ -1,72 +0,0 @@ -dart_add_test("comprehensive" test_Building) -dart_add_test("comprehensive" test_Common) -dart_add_test("comprehensive" test_Concurrency) -dart_add_test("comprehensive" test_Constraint) -dart_add_test("comprehensive" test_Frames) -dart_add_test("comprehensive" test_Friction) -dart_add_test("comprehensive" test_InverseKinematics) -dart_add_test("comprehensive" test_NameManagement) - -if(TARGET dart-optimizer-pagmo) - dart_add_test("comprehensive" test_MultiObjectiveOptimization) - target_link_libraries(test_MultiObjectiveOptimization dart-optimizer-pagmo) -endif() - -dart_add_test("comprehensive" test_Distance) -if(TARGET dart-collision-bullet) - target_link_libraries(test_Distance dart-collision-bullet) -endif() - -dart_add_test("comprehensive" test_Raycast) -if(TARGET dart-collision-bullet) - target_link_libraries(test_Raycast dart-collision-bullet) -endif() - -if(TARGET dart-collision-ode) - # This test doesn't work with FCL because it converts simple shapes to meshes, which makes - # it difficult to come up with correct test expectations. - dart_add_test("comprehensive" test_ForceDependentSlip) - target_link_libraries(test_ForceDependentSlip dart-collision-ode) -endif() - -if(TARGET dart-utils) - - dart_add_test("comprehensive" test_Collision) - target_link_libraries(test_Collision dart-utils) - if(TARGET dart-collision-bullet) - target_link_libraries(test_Collision dart-collision-bullet) - endif() - if(TARGET dart-collision-ode) - target_link_libraries(test_Collision dart-collision-ode) - endif() - - dart_add_test("comprehensive" test_Dynamics) - target_link_libraries(test_Dynamics dart-utils) - - dart_add_test("comprehensive" test_Joints) - target_link_libraries(test_Joints dart-utils) - - dart_add_test("comprehensive" test_JointForceTorque) - target_link_libraries(test_JointForceTorque dart-utils) - - dart_add_test("comprehensive" test_Skeleton) - target_link_libraries(test_Skeleton dart-utils) - - dart_add_test("comprehensive" test_MetaSkeleton) - target_link_libraries(test_MetaSkeleton dart-utils) - - dart_add_test("comprehensive" test_SoftDynamics) - target_link_libraries(test_SoftDynamics dart-utils) - - dart_add_test("comprehensive" test_World) - target_link_libraries(test_World dart-utils) - if(TARGET dart-collision-bullet) - target_link_libraries(test_World dart-collision-bullet) - endif() - - if(TARGET dart-utils-urdf) - dart_add_test("comprehensive" test_ForwardKinematics) - target_link_libraries(test_ForwardKinematics dart-utils-urdf) - endif() - -endif() diff --git a/unittests/integration/CMakeLists.txt b/unittests/integration/CMakeLists.txt new file mode 100644 index 0000000000000..d5faa53c64041 --- /dev/null +++ b/unittests/integration/CMakeLists.txt @@ -0,0 +1,171 @@ +# Copyright (c) 2011-2021, The DART development contributors + +dart_build_tests( + TYPE integration + TARGET_PREFIX INTEGRATION + LINK_LIBRARIES dart + SOURCES + test_Aspect.cpp + test_Building.cpp + test_Common.cpp + test_Concurrency.cpp + test_Constraint.cpp + test_Frames.cpp + test_Friction.cpp + test_InverseKinematics.cpp + test_NameManagement.cpp + test_Signal.cpp +) + +dart_add_test("integration" test_CollisionGroups) +foreach(collision_engine + dart-collision-bullet + dart-collision-ode) + if(TARGET ${collision_engine}) + target_link_libraries(test_CollisionGroups ${collision_engine}) + endif() +endforeach() +dart_add_test("integration" test_ContactConstraint) +dart_add_test("integration" test_GenericJoints) +dart_add_test("integration" test_Inertia) +dart_add_test("integration" test_Lemke) +dart_add_test("integration" test_LocalResourceRetriever) +dart_add_test("integration" test_Optimizer) +dart_add_test("integration" test_ScrewJoint) +dart_add_test("integration" test_Subscriptions) + +if(TARGET dart-optimizer-ipopt) + target_link_libraries(test_Optimizer dart-optimizer-ipopt) +endif() + +if(TARGET dart-optimizer-nlopt) + target_link_libraries(test_Optimizer dart-optimizer-nlopt) +endif() + +if(TARGET dart-utils) + + dart_add_test("integration" test_CompositeResourceRetriever) + target_link_libraries(test_CompositeResourceRetriever dart-utils) + + dart_add_test("integration" test_DartResourceRetriever) + target_link_libraries(test_DartResourceRetriever dart-utils) + + dart_add_test("integration" test_FileInfoWorld) + target_link_libraries(test_FileInfoWorld dart-utils) + + dart_add_test("integration" test_PackageResourceRetriever) + target_link_libraries(test_PackageResourceRetriever dart-utils) + + dart_add_test("integration" test_MjcfParser) + target_link_libraries(test_MjcfParser dart-utils) + + dart_add_test("integration" test_SdfParser) + target_link_libraries(test_SdfParser dart-utils) + + dart_add_test("integration" test_SkelParser) + target_link_libraries(test_SkelParser dart-utils) + + if(NOT MSVC) + dart_add_test("integration" test_VskParser) + target_link_libraries(test_VskParser dart-utils) + endif() + +endif() + +if(TARGET dart-utils-urdf) + if(NOT MSVC) + dart_add_test("integration" test_DartLoader) + target_link_libraries(test_DartLoader dart-utils-urdf) + endif() + + dart_add_library(SharedLibraryWamIkFast SharedLibraryWamIkFast.hpp SharedLibraryWamIkFast.cpp) + target_link_libraries(SharedLibraryWamIkFast PUBLIC dart) + target_compile_definitions(SharedLibraryWamIkFast PUBLIC IKFAST_NO_MAIN IKFAST_CLIBRARY) + target_compile_options(SharedLibraryWamIkFast PRIVATE -w) + + dart_add_library(GeneratedWamIkFast GeneratedWamIkFast.cpp) + target_link_libraries(GeneratedWamIkFast PUBLIC dart) + target_compile_definitions(GeneratedWamIkFast PUBLIC IKFAST_NO_MAIN IKFAST_CLIBRARY) + target_compile_options(GeneratedWamIkFast PRIVATE -w) + + if(BUILD_SHARED_LIBS) + dart_add_test("integration" test_IkFast) + target_link_libraries(test_IkFast dart-utils-urdf) + add_dependencies(test_IkFast GeneratedWamIkFast SharedLibraryWamIkFast) + endif() +endif() + +if(TARGET dart-planning) + dart_add_test("integration" test_NearestNeighbor) + target_link_libraries(test_NearestNeighbor dart-planning) +endif() + +dart_format_add( + GeneratedWamIkFast.cpp + SharedLibraryWamIkFast.hpp + SharedLibraryWamIkFast.cpp +) + +if(TARGET dart-optimizer-pagmo) + dart_add_test("integration" test_MultiObjectiveOptimization) + target_link_libraries(test_MultiObjectiveOptimization dart-optimizer-pagmo) +endif() + +dart_add_test("integration" test_Distance) +if(TARGET dart-collision-bullet) + target_link_libraries(test_Distance dart-collision-bullet) +endif() + +dart_add_test("integration" test_Raycast) +if(TARGET dart-collision-bullet) + target_link_libraries(test_Raycast dart-collision-bullet) +endif() + +if(TARGET dart-collision-ode) + # This test doesn't work with FCL because it converts simple shapes to meshes, which makes + # it difficult to come up with correct test expectations. + dart_add_test("integration" test_ForceDependentSlip) + target_link_libraries(test_ForceDependentSlip dart-collision-ode) +endif() + +if(TARGET dart-utils) + + dart_add_test("integration" test_Collision) + target_link_libraries(test_Collision dart-utils) + if(TARGET dart-collision-bullet) + target_link_libraries(test_Collision dart-collision-bullet) + endif() + if(TARGET dart-collision-ode) + target_link_libraries(test_Collision dart-collision-ode) + endif() + + dart_add_test("integration" test_Dynamics) + target_link_libraries(test_Dynamics dart-utils) + + dart_add_test("integration" test_Joints) + target_link_libraries(test_Joints dart-utils) + + dart_add_test("integration" test_JointForceTorque) + target_link_libraries(test_JointForceTorque dart-utils) + + dart_add_test("integration" test_Skeleton) + target_link_libraries(test_Skeleton dart-utils) + + dart_add_test("integration" test_MetaSkeleton) + target_link_libraries(test_MetaSkeleton dart-utils) + + dart_add_test("integration" test_SoftDynamics) + target_link_libraries(test_SoftDynamics dart-utils) + + dart_add_test("integration" test_World) + target_link_libraries(test_World dart-utils) + if(TARGET dart-collision-bullet) + target_link_libraries(test_World dart-collision-bullet) + endif() + + if(TARGET dart-utils-urdf) + dart_add_test("integration" test_ForwardKinematics) + target_link_libraries(test_ForwardKinematics dart-utils-urdf) + endif() + +endif() diff --git a/unittests/unit/GeneratedWamIkFast.cpp b/unittests/integration/GeneratedWamIkFast.cpp similarity index 100% rename from unittests/unit/GeneratedWamIkFast.cpp rename to unittests/integration/GeneratedWamIkFast.cpp diff --git a/unittests/unit/SharedLibraryWamIkFast.cpp b/unittests/integration/SharedLibraryWamIkFast.cpp similarity index 100% rename from unittests/unit/SharedLibraryWamIkFast.cpp rename to unittests/integration/SharedLibraryWamIkFast.cpp diff --git a/unittests/unit/SharedLibraryWamIkFast.hpp b/unittests/integration/SharedLibraryWamIkFast.hpp similarity index 100% rename from unittests/unit/SharedLibraryWamIkFast.hpp rename to unittests/integration/SharedLibraryWamIkFast.hpp diff --git a/unittests/unit/test_Aspect.cpp b/unittests/integration/test_Aspect.cpp similarity index 100% rename from unittests/unit/test_Aspect.cpp rename to unittests/integration/test_Aspect.cpp diff --git a/unittests/comprehensive/test_Building.cpp b/unittests/integration/test_Building.cpp similarity index 100% rename from unittests/comprehensive/test_Building.cpp rename to unittests/integration/test_Building.cpp diff --git a/unittests/comprehensive/test_Collision.cpp b/unittests/integration/test_Collision.cpp similarity index 99% rename from unittests/comprehensive/test_Collision.cpp rename to unittests/integration/test_Collision.cpp index d25c6f666cbb0..499dd27f62cde 100644 --- a/unittests/comprehensive/test_Collision.cpp +++ b/unittests/integration/test_Collision.cpp @@ -510,7 +510,7 @@ void testSphereSphere( } } // The positions of contact point are different depending on the collision - // detector. More comprehensive tests need to be added. + // detector. More integration tests need to be added. } //============================================================================== diff --git a/unittests/unit/test_CollisionGroups.cpp b/unittests/integration/test_CollisionGroups.cpp similarity index 100% rename from unittests/unit/test_CollisionGroups.cpp rename to unittests/integration/test_CollisionGroups.cpp diff --git a/unittests/comprehensive/test_Common.cpp b/unittests/integration/test_Common.cpp similarity index 100% rename from unittests/comprehensive/test_Common.cpp rename to unittests/integration/test_Common.cpp diff --git a/unittests/unit/test_CompositeResourceRetriever.cpp b/unittests/integration/test_CompositeResourceRetriever.cpp similarity index 100% rename from unittests/unit/test_CompositeResourceRetriever.cpp rename to unittests/integration/test_CompositeResourceRetriever.cpp diff --git a/unittests/comprehensive/test_Concurrency.cpp b/unittests/integration/test_Concurrency.cpp similarity index 100% rename from unittests/comprehensive/test_Concurrency.cpp rename to unittests/integration/test_Concurrency.cpp diff --git a/unittests/comprehensive/test_Constraint.cpp b/unittests/integration/test_Constraint.cpp similarity index 100% rename from unittests/comprehensive/test_Constraint.cpp rename to unittests/integration/test_Constraint.cpp diff --git a/unittests/unit/test_ContactConstraint.cpp b/unittests/integration/test_ContactConstraint.cpp similarity index 100% rename from unittests/unit/test_ContactConstraint.cpp rename to unittests/integration/test_ContactConstraint.cpp diff --git a/unittests/unit/test_DartLoader.cpp b/unittests/integration/test_DartLoader.cpp similarity index 100% rename from unittests/unit/test_DartLoader.cpp rename to unittests/integration/test_DartLoader.cpp diff --git a/unittests/unit/test_DartResourceRetriever.cpp b/unittests/integration/test_DartResourceRetriever.cpp similarity index 100% rename from unittests/unit/test_DartResourceRetriever.cpp rename to unittests/integration/test_DartResourceRetriever.cpp diff --git a/unittests/comprehensive/test_Distance.cpp b/unittests/integration/test_Distance.cpp similarity index 100% rename from unittests/comprehensive/test_Distance.cpp rename to unittests/integration/test_Distance.cpp diff --git a/unittests/comprehensive/test_Dynamics.cpp b/unittests/integration/test_Dynamics.cpp similarity index 100% rename from unittests/comprehensive/test_Dynamics.cpp rename to unittests/integration/test_Dynamics.cpp diff --git a/unittests/unit/test_FileInfoWorld.cpp b/unittests/integration/test_FileInfoWorld.cpp similarity index 100% rename from unittests/unit/test_FileInfoWorld.cpp rename to unittests/integration/test_FileInfoWorld.cpp diff --git a/unittests/comprehensive/test_ForceDependentSlip.cpp b/unittests/integration/test_ForceDependentSlip.cpp similarity index 100% rename from unittests/comprehensive/test_ForceDependentSlip.cpp rename to unittests/integration/test_ForceDependentSlip.cpp diff --git a/unittests/comprehensive/test_ForwardKinematics.cpp b/unittests/integration/test_ForwardKinematics.cpp similarity index 100% rename from unittests/comprehensive/test_ForwardKinematics.cpp rename to unittests/integration/test_ForwardKinematics.cpp diff --git a/unittests/comprehensive/test_Frames.cpp b/unittests/integration/test_Frames.cpp similarity index 100% rename from unittests/comprehensive/test_Frames.cpp rename to unittests/integration/test_Frames.cpp diff --git a/unittests/comprehensive/test_Friction.cpp b/unittests/integration/test_Friction.cpp similarity index 100% rename from unittests/comprehensive/test_Friction.cpp rename to unittests/integration/test_Friction.cpp diff --git a/unittests/unit/test_GenericJoints.cpp b/unittests/integration/test_GenericJoints.cpp similarity index 100% rename from unittests/unit/test_GenericJoints.cpp rename to unittests/integration/test_GenericJoints.cpp diff --git a/unittests/unit/test_IkFast.cpp b/unittests/integration/test_IkFast.cpp similarity index 100% rename from unittests/unit/test_IkFast.cpp rename to unittests/integration/test_IkFast.cpp diff --git a/unittests/unit/test_Inertia.cpp b/unittests/integration/test_Inertia.cpp similarity index 100% rename from unittests/unit/test_Inertia.cpp rename to unittests/integration/test_Inertia.cpp diff --git a/unittests/comprehensive/test_InverseKinematics.cpp b/unittests/integration/test_InverseKinematics.cpp similarity index 100% rename from unittests/comprehensive/test_InverseKinematics.cpp rename to unittests/integration/test_InverseKinematics.cpp diff --git a/unittests/comprehensive/test_JointForceTorque.cpp b/unittests/integration/test_JointForceTorque.cpp similarity index 100% rename from unittests/comprehensive/test_JointForceTorque.cpp rename to unittests/integration/test_JointForceTorque.cpp diff --git a/unittests/comprehensive/test_Joints.cpp b/unittests/integration/test_Joints.cpp similarity index 100% rename from unittests/comprehensive/test_Joints.cpp rename to unittests/integration/test_Joints.cpp diff --git a/unittests/unit/test_Lemke.cpp b/unittests/integration/test_Lemke.cpp similarity index 100% rename from unittests/unit/test_Lemke.cpp rename to unittests/integration/test_Lemke.cpp diff --git a/unittests/unit/test_LocalResourceRetriever.cpp b/unittests/integration/test_LocalResourceRetriever.cpp similarity index 100% rename from unittests/unit/test_LocalResourceRetriever.cpp rename to unittests/integration/test_LocalResourceRetriever.cpp diff --git a/unittests/comprehensive/test_MetaSkeleton.cpp b/unittests/integration/test_MetaSkeleton.cpp similarity index 100% rename from unittests/comprehensive/test_MetaSkeleton.cpp rename to unittests/integration/test_MetaSkeleton.cpp diff --git a/unittests/unit/test_MjcfParser.cpp b/unittests/integration/test_MjcfParser.cpp similarity index 100% rename from unittests/unit/test_MjcfParser.cpp rename to unittests/integration/test_MjcfParser.cpp diff --git a/unittests/comprehensive/test_MultiObjectiveOptimization.cpp b/unittests/integration/test_MultiObjectiveOptimization.cpp similarity index 100% rename from unittests/comprehensive/test_MultiObjectiveOptimization.cpp rename to unittests/integration/test_MultiObjectiveOptimization.cpp diff --git a/unittests/comprehensive/test_NameManagement.cpp b/unittests/integration/test_NameManagement.cpp similarity index 100% rename from unittests/comprehensive/test_NameManagement.cpp rename to unittests/integration/test_NameManagement.cpp diff --git a/unittests/unit/test_NearestNeighbor.cpp b/unittests/integration/test_NearestNeighbor.cpp similarity index 100% rename from unittests/unit/test_NearestNeighbor.cpp rename to unittests/integration/test_NearestNeighbor.cpp diff --git a/unittests/unit/test_Optimizer.cpp b/unittests/integration/test_Optimizer.cpp similarity index 100% rename from unittests/unit/test_Optimizer.cpp rename to unittests/integration/test_Optimizer.cpp diff --git a/unittests/unit/test_PackageResourceRetriever.cpp b/unittests/integration/test_PackageResourceRetriever.cpp similarity index 100% rename from unittests/unit/test_PackageResourceRetriever.cpp rename to unittests/integration/test_PackageResourceRetriever.cpp diff --git a/unittests/comprehensive/test_Raycast.cpp b/unittests/integration/test_Raycast.cpp similarity index 100% rename from unittests/comprehensive/test_Raycast.cpp rename to unittests/integration/test_Raycast.cpp diff --git a/unittests/unit/test_ScrewJoint.cpp b/unittests/integration/test_ScrewJoint.cpp similarity index 100% rename from unittests/unit/test_ScrewJoint.cpp rename to unittests/integration/test_ScrewJoint.cpp diff --git a/unittests/unit/test_SdfParser.cpp b/unittests/integration/test_SdfParser.cpp similarity index 100% rename from unittests/unit/test_SdfParser.cpp rename to unittests/integration/test_SdfParser.cpp diff --git a/unittests/unit/test_Signal.cpp b/unittests/integration/test_Signal.cpp similarity index 99% rename from unittests/unit/test_Signal.cpp rename to unittests/integration/test_Signal.cpp index c2d6d1d426ee6..7179c1d458d13 100644 --- a/unittests/unit/test_Signal.cpp +++ b/unittests/integration/test_Signal.cpp @@ -41,7 +41,6 @@ using namespace Eigen; using namespace dart; using namespace common; using namespace dynamics; -using namespace simulation; static int callCount0 = 0; static int callCount1 = 0; diff --git a/unittests/unit/test_SkelParser.cpp b/unittests/integration/test_SkelParser.cpp similarity index 100% rename from unittests/unit/test_SkelParser.cpp rename to unittests/integration/test_SkelParser.cpp diff --git a/unittests/comprehensive/test_Skeleton.cpp b/unittests/integration/test_Skeleton.cpp similarity index 100% rename from unittests/comprehensive/test_Skeleton.cpp rename to unittests/integration/test_Skeleton.cpp diff --git a/unittests/comprehensive/test_SoftDynamics.cpp b/unittests/integration/test_SoftDynamics.cpp similarity index 100% rename from unittests/comprehensive/test_SoftDynamics.cpp rename to unittests/integration/test_SoftDynamics.cpp diff --git a/unittests/unit/test_Subscriptions.cpp b/unittests/integration/test_Subscriptions.cpp similarity index 100% rename from unittests/unit/test_Subscriptions.cpp rename to unittests/integration/test_Subscriptions.cpp diff --git a/unittests/unit/test_VskParser.cpp b/unittests/integration/test_VskParser.cpp similarity index 100% rename from unittests/unit/test_VskParser.cpp rename to unittests/integration/test_VskParser.cpp diff --git a/unittests/comprehensive/test_World.cpp b/unittests/integration/test_World.cpp similarity index 100% rename from unittests/comprehensive/test_World.cpp rename to unittests/integration/test_World.cpp diff --git a/unittests/unit/CMakeLists.txt b/unittests/unit/CMakeLists.txt index 70400cbf6a808..8541a9eadf0f4 100644 --- a/unittests/unit/CMakeLists.txt +++ b/unittests/unit/CMakeLists.txt @@ -1,100 +1,4 @@ -dart_add_test("unit" test_Aspect) -dart_add_test("unit" test_CollisionGroups) -foreach(collision_engine - dart-collision-bullet - dart-collision-ode) - if(TARGET ${collision_engine}) - target_link_libraries(test_CollisionGroups ${collision_engine}) - endif() -endforeach() -dart_add_test("unit" test_CAllocator) -dart_add_test("unit" test_ContactConstraint) -dart_add_test("unit" test_Factory) -dart_add_test("unit" test_GenericJoints) -dart_add_test("unit" test_Geometry) -dart_add_test("unit" test_Icosphere) -dart_add_test("unit" test_Inertia) -dart_add_test("unit" test_Lemke) -dart_add_test("unit" test_LocalResourceRetriever) -dart_add_test("unit" test_Logging) -dart_add_test("unit" test_Math) -dart_add_test("unit" test_Optimizer) -dart_add_test("unit" test_Random) -dart_add_test("unit" test_ScrewJoint) -dart_add_test("unit" test_Signal) -dart_add_test("unit" test_StlAllocator) -dart_add_test("unit" test_Subscriptions) -dart_add_test("unit" test_TriMesh) -dart_add_test("unit" test_Uri) +# Copyright (c) 2011-2021, The DART development contributors -if(TARGET dart-optimizer-ipopt) - target_link_libraries(test_Optimizer dart-optimizer-ipopt) -endif() - -if(TARGET dart-optimizer-nlopt) - target_link_libraries(test_Optimizer dart-optimizer-nlopt) -endif() - -if(TARGET dart-utils) - - dart_add_test("unit" test_CompositeResourceRetriever) - target_link_libraries(test_CompositeResourceRetriever dart-utils) - - dart_add_test("unit" test_DartResourceRetriever) - target_link_libraries(test_DartResourceRetriever dart-utils) - - dart_add_test("unit" test_FileInfoWorld) - target_link_libraries(test_FileInfoWorld dart-utils) - - dart_add_test("unit" test_PackageResourceRetriever) - target_link_libraries(test_PackageResourceRetriever dart-utils) - - dart_add_test("unit" test_MjcfParser) - target_link_libraries(test_MjcfParser dart-utils) - - dart_add_test("unit" test_SdfParser) - target_link_libraries(test_SdfParser dart-utils) - - dart_add_test("unit" test_SkelParser) - target_link_libraries(test_SkelParser dart-utils) - - if(NOT MSVC) - dart_add_test("unit" test_VskParser) - target_link_libraries(test_VskParser dart-utils) - endif() - -endif() - -if(TARGET dart-utils-urdf) - if(NOT MSVC) - dart_add_test("unit" test_DartLoader) - target_link_libraries(test_DartLoader dart-utils-urdf) - endif() - - dart_add_library(SharedLibraryWamIkFast SharedLibraryWamIkFast.hpp SharedLibraryWamIkFast.cpp) - target_link_libraries(SharedLibraryWamIkFast PUBLIC dart) - target_compile_definitions(SharedLibraryWamIkFast PUBLIC IKFAST_NO_MAIN IKFAST_CLIBRARY) - target_compile_options(SharedLibraryWamIkFast PRIVATE -w) - - dart_add_library(GeneratedWamIkFast GeneratedWamIkFast.cpp) - target_link_libraries(GeneratedWamIkFast PUBLIC dart) - target_compile_definitions(GeneratedWamIkFast PUBLIC IKFAST_NO_MAIN IKFAST_CLIBRARY) - target_compile_options(GeneratedWamIkFast PRIVATE -w) - - if(BUILD_SHARED_LIBS) - dart_add_test("unit" test_IkFast) - target_link_libraries(test_IkFast dart-utils-urdf) - add_dependencies(test_IkFast GeneratedWamIkFast SharedLibraryWamIkFast) - endif() -endif() - -if(TARGET dart-planning) - dart_add_test("unit" test_NearestNeighbor) - target_link_libraries(test_NearestNeighbor dart-planning) -endif() - -dart_format_add( - GeneratedWamIkFast.cpp - SharedLibraryWamIkFast.hpp - SharedLibraryWamIkFast.cpp -) +add_subdirectory(common) +add_subdirectory(math) diff --git a/unittests/unit/common/CMakeLists.txt b/unittests/unit/common/CMakeLists.txt new file mode 100644 index 0000000000000..e3a9fadfa22e9 --- /dev/null +++ b/unittests/unit/common/CMakeLists.txt @@ -0,0 +1,9 @@ +# Copyright (c) 2011-2021, The DART development contributors + +dart_build_tests( + TYPE unit + COMPONENT_NAME common + TARGET_PREFIX UNIT_common + LINK_LIBRARIES dart + GLOB_SOURCES +) diff --git a/unittests/unit/test_CAllocator.cpp b/unittests/unit/common/test_CAllocator.cpp similarity index 100% rename from unittests/unit/test_CAllocator.cpp rename to unittests/unit/common/test_CAllocator.cpp diff --git a/unittests/unit/test_Factory.cpp b/unittests/unit/common/test_Factory.cpp similarity index 100% rename from unittests/unit/test_Factory.cpp rename to unittests/unit/common/test_Factory.cpp diff --git a/unittests/unit/test_Logging.cpp b/unittests/unit/common/test_Logging.cpp similarity index 100% rename from unittests/unit/test_Logging.cpp rename to unittests/unit/common/test_Logging.cpp diff --git a/unittests/unit/test_Uri.cpp b/unittests/unit/common/test_Uri.cpp similarity index 100% rename from unittests/unit/test_Uri.cpp rename to unittests/unit/common/test_Uri.cpp diff --git a/unittests/unit/math/CMakeLists.txt b/unittests/unit/math/CMakeLists.txt new file mode 100644 index 0000000000000..bdecbf3134c42 --- /dev/null +++ b/unittests/unit/math/CMakeLists.txt @@ -0,0 +1,9 @@ +# Copyright (c) 2011-2021, The DART development contributors + +dart_build_tests( + TYPE unit + COMPONENT_NAME math + TARGET_PREFIX UNIT_math + LINK_LIBRARIES dart + GLOB_SOURCES +) diff --git a/unittests/unit/test_Geometry.cpp b/unittests/unit/math/test_Geometry.cpp similarity index 98% rename from unittests/unit/test_Geometry.cpp rename to unittests/unit/math/test_Geometry.cpp index fd392c0b2b35f..50a2431de051e 100644 --- a/unittests/unit/test_Geometry.cpp +++ b/unittests/unit/math/test_Geometry.cpp @@ -34,23 +34,13 @@ #include -#include "dart/dynamics/BallJoint.hpp" -#include "dart/dynamics/FreeJoint.hpp" -#include "dart/dynamics/PrismaticJoint.hpp" -#include "dart/dynamics/RevoluteJoint.hpp" -#include "dart/dynamics/Skeleton.hpp" -#include "dart/dynamics/TranslationalJoint.hpp" -#include "dart/dynamics/WeldJoint.hpp" #include "dart/math/Geometry.hpp" #include "dart/math/Helpers.hpp" -#include "dart/simulation/World.hpp" #include "TestHelpers.hpp" using namespace dart; using namespace math; -using namespace dynamics; -using namespace simulation; #define LIE_GROUP_OPT_TOL 1e-12 diff --git a/unittests/unit/test_Icosphere.cpp b/unittests/unit/math/test_Icosphere.cpp similarity index 100% rename from unittests/unit/test_Icosphere.cpp rename to unittests/unit/math/test_Icosphere.cpp diff --git a/unittests/unit/test_Math.cpp b/unittests/unit/math/test_Math.cpp similarity index 100% rename from unittests/unit/test_Math.cpp rename to unittests/unit/math/test_Math.cpp diff --git a/unittests/unit/test_Random.cpp b/unittests/unit/math/test_Random.cpp similarity index 100% rename from unittests/unit/test_Random.cpp rename to unittests/unit/math/test_Random.cpp diff --git a/unittests/unit/test_StlAllocator.cpp b/unittests/unit/math/test_StlAllocator.cpp similarity index 100% rename from unittests/unit/test_StlAllocator.cpp rename to unittests/unit/math/test_StlAllocator.cpp diff --git a/unittests/unit/test_TriMesh.cpp b/unittests/unit/math/test_TriMesh.cpp similarity index 100% rename from unittests/unit/test_TriMesh.cpp rename to unittests/unit/math/test_TriMesh.cpp