add collision and inverse dynamics unit tests to cmake, .travis.yml and appveyor.yml
(more unit tests will follow, once this setup works)
This commit is contained in:
@@ -10,10 +10,13 @@ script:
|
||||
- echo "CC="$CC
|
||||
- cmake . -G "Unix Makefiles" #-DCMAKE_CXX_FLAGS=-Werror
|
||||
- make -j8
|
||||
# Test again with double precision
|
||||
- ctest -j8 --output-on-failure
|
||||
# Build again with double precision
|
||||
- cmake . -G "Unix Makefiles" -DUSE_DOUBLE_PRECISION=ON #-DCMAKE_CXX_FLAGS=-Werror
|
||||
- make -j8
|
||||
# Test again with shared libraries
|
||||
- ctest -j8 --output-on-failure
|
||||
# Build again with shared libraries
|
||||
- cmake . -G "Unix Makefiles" -DBUILD_SHARED_LIBS=ON
|
||||
- make -j8
|
||||
- ctest -j8 --output-on-failure
|
||||
- sudo make install
|
||||
|
||||
@@ -80,12 +80,12 @@ IF(MSVC)
|
||||
ELSE()
|
||||
OPTION(USE_MSVC_SSE "Use MSVC /arch:sse option" ON)
|
||||
IF (USE_MSVC_SSE)
|
||||
ADD_DEFINITIONS(/arch:SSE)
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /arch:SSE")
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
OPTION(USE_MSVC_FAST_FLOATINGPOINT "Use MSVC /fp:fast option" ON)
|
||||
IF (USE_MSVC_FAST_FLOATINGPOINT)
|
||||
ADD_DEFINITIONS(/fp:fast)
|
||||
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /fp:fast")
|
||||
ENDIF()
|
||||
ENDIF(MSVC)
|
||||
|
||||
@@ -273,6 +273,7 @@ ENDIF (${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION} GREATER 2.5)
|
||||
OPTION(BUILD_UNIT_TESTS "Build Unit Tests" ON)
|
||||
|
||||
IF (BUILD_UNIT_TESTS)
|
||||
ENABLE_TESTING()
|
||||
SUBDIRS(test)
|
||||
ENDIF()
|
||||
|
||||
|
||||
@@ -1,5 +1,12 @@
|
||||
build:
|
||||
project: build3/vs2010/0_Bullet3Solution.sln
|
||||
- mkdir cmake
|
||||
- cd cmake
|
||||
- cmake .. -G"Visual Studio 14 2015 Win64"
|
||||
- cmake --build . --target ALL_BUILD --config Release -- /maxcpucount:4 /verbosity:quiet
|
||||
|
||||
test_script:
|
||||
- ctest --parallel 4 --build-config Release --output-on-failure
|
||||
|
||||
before_build:
|
||||
- echo %CD%
|
||||
@@ -7,3 +14,4 @@ before_build:
|
||||
- echo %CD%
|
||||
- premake4 vs2010
|
||||
- ps: cd ..
|
||||
|
||||
|
||||
@@ -1,3 +1,3 @@
|
||||
#SUBDIRS( gtest-1.7.0 TestBullet3OpenCL)
|
||||
SUBDIRS( gtest-1.7.0 )
|
||||
SUBDIRS( gtest-1.7.0 collision InverseDynamics)
|
||||
|
||||
|
||||
30
test/InverseDynamics/CMakeLists.txt
Normal file
30
test/InverseDynamics/CMakeLists.txt
Normal file
@@ -0,0 +1,30 @@
|
||||
|
||||
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
.
|
||||
../../src
|
||||
../gtest-1.7.0/include
|
||||
../../Extras/InverseDynamics
|
||||
)
|
||||
|
||||
|
||||
#ADD_DEFINITIONS(-DGTEST_HAS_PTHREAD=1)
|
||||
ADD_DEFINITIONS(-D_VARIADIC_MAX=10)
|
||||
|
||||
LINK_LIBRARIES(
|
||||
BulletInverseDynamicsUtils BulletInverseDynamics Bullet3Common LinearMath gtest
|
||||
)
|
||||
|
||||
|
||||
ADD_EXECUTABLE(Test_BulletInverseDynamics
|
||||
test_invdyn_kinematics.cpp
|
||||
)
|
||||
|
||||
ADD_TEST(Test_BulletInverseDynamics_PASS Test_BulletInverseDynamics)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -349,7 +349,7 @@ TEST(InvDynKinematicsDifferentiation, errorOrder) {
|
||||
const idScalar expected_angular_acceleration_error_1 =
|
||||
max_angular_acceleration_error[0] * pow(kDeltaTs[1] / kDeltaTs[0], 2);
|
||||
|
||||
printf("linear vel error: %e %e %e\n", max_linear_velocity_error[1],
|
||||
/* printf("linear vel error: %e %e %e\n", max_linear_velocity_error[1],
|
||||
expected_linear_velocity_error_1,
|
||||
max_linear_velocity_error[1] - expected_linear_velocity_error_1);
|
||||
printf("angular vel error: %e %e %e\n", max_angular_velocity_error[1],
|
||||
@@ -361,6 +361,7 @@ TEST(InvDynKinematicsDifferentiation, errorOrder) {
|
||||
printf("angular acc error: %e %e %e\n", max_angular_acceleration_error[1],
|
||||
expected_angular_acceleration_error_1,
|
||||
max_angular_acceleration_error[1] - expected_angular_acceleration_error_1);
|
||||
*/
|
||||
}
|
||||
|
||||
int main(int argc, char** argv) {
|
||||
|
||||
36
test/collision/CMakeLists.txt
Normal file
36
test/collision/CMakeLists.txt
Normal file
@@ -0,0 +1,36 @@
|
||||
|
||||
INCLUDE_DIRECTORIES(
|
||||
.
|
||||
../../src
|
||||
../gtest-1.7.0/include
|
||||
)
|
||||
|
||||
|
||||
#ADD_DEFINITIONS(-DGTEST_HAS_PTHREAD=1)
|
||||
ADD_DEFINITIONS(-D_VARIADIC_MAX=10)
|
||||
|
||||
LINK_LIBRARIES(
|
||||
LinearMath gtest
|
||||
)
|
||||
|
||||
|
||||
ADD_EXECUTABLE(Test_Collision
|
||||
main.cpp
|
||||
../../src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.cpp
|
||||
../../src/BulletCollision/NarrowPhaseCollision/btVoronoiSimplexSolver.h
|
||||
../../src/BulletCollision/CollisionShapes/btSphereShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btMultiSphereShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btPolyhedralConvexShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btConvexShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btConvexInternalShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btCollisionShape.cpp
|
||||
../../src/BulletCollision/CollisionShapes/btConvexPolyhedron.cpp
|
||||
)
|
||||
|
||||
ADD_TEST(Test_Collision_PASS Test_Collision)
|
||||
|
||||
IF (INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES DEBUG_POSTFIX "_Debug")
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES MINSIZEREL_POSTFIX "_MinsizeRel")
|
||||
SET_TARGET_PROPERTIES(Test_Collision PROPERTIES RELWITHDEBINFO_POSTFIX "_RelWithDebugInfo")
|
||||
ENDIF(INTERNAL_ADD_POSTFIX_EXECUTABLE_NAMES)
|
||||
@@ -179,12 +179,12 @@ void testSphereSphereDistance(SphereSphereTestMethod method, btScalar abs_error)
|
||||
ASSERT_EQ(btScalar(0), distInfo.m_distance);
|
||||
}
|
||||
|
||||
for (int rb=1;rb<10;rb++)
|
||||
for (int z=-20;z<20;z++)
|
||||
for (int rb=1;rb<5;rb++)
|
||||
for (int z=-5;z<5;z++)
|
||||
{
|
||||
for (int j=1;j<10;j++)
|
||||
for (int j=1;j<5;j++)
|
||||
{
|
||||
for (int i=-20;i<20;i++)
|
||||
for (int i=-5;i<5;i++)
|
||||
{
|
||||
if (i!=z)//skip co-centric spheres for now (todo(erwincoumans) fix this)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user