Mike, rosmake has a -t option which will test a package. It is just calling make on all dependent packages then make test on the package(s) requested. In terms of the actual error, it's a compile error. I would highly recommend that you not use trunk of anything that you are not involved in actively developing. Compile errors are not uncommon on trunk and if you're not interested in tracking them down and providing patches/opening tickets a released version will be much better for you. Something like https://code.ros.org/svn/ros-pkg/stacks/point_cloud_perception/tags/cturtlewould likely be better. Tully On Fri, Aug 13, 2010 at 2:36 PM, Michael Styer wrote: > Hello, > > I'm working on learning the unit testing procedure used in ROS. So, if I > understand correctly, running the tests for a particular package > (assuming it has tests) just means > > roscd > make test > > First of all, is that the right way to do it? Or is there a rosmake > invocation I should use? > > Then, that works in my installation for most packages, but for PCL I get > a strange compilation error: > > [ 68%] Building CXX object test/CMakeFiles/test_io.dir/test_io.o > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/test/test_io.cpp:272: > error: redefinition of ‘struct > REGISTERED_POINT_TYPE_MUST_BE_PLAIN_OLD_DATA272’ > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/include/pcl/point_types.h:270: > error: previous definition of ‘struct > REGISTERED_POINT_TYPE_MUST_BE_PLAIN_OLD_DATA272’ > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/test/test_io.cpp:270: > error: invalid type in declaration before ‘;’ token > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/test/test_io.cpp:270: > error: conflicting declaration ‘typedef int mpl_assert_arg272’ > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/include/pcl/point_types.h:272: > error: ‘mpl_assert_arg272’ has a previous declaration as ‘typedef struct > REGISTERED_POINT_TYPE_MUST_BE_PLAIN_OLD_DATA272 mpl_assert_arg272’ > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/test/test_io.cpp:270: > error: conflicting declaration ‘mpl_assertion_in_line_272’ > /home/stm1pal/ros/stacks/point_cloud_perception/pcl/include/pcl/point_types.h:270: > error: ‘mpl_assertion_in_line_272’ has a previous declaration as ‘ enum> mpl_assertion_in_line_272’ > make[4]: *** [test/CMakeFiles/test_io.dir/test_io.o] Error 1 > make[4]: Target `test/CMakeFiles/test_io.dir/build' not remade because > of errors. > > I'll keep looking into it, but does anyone know what might be causing > that? For reference I'm pulling pcl from > > https://code.ros.org/svn/ros-pkg/stacks/point_cloud_perception/trunk/pcl > > I have the latest revision (31739). Also let me know if that's not the > right repo. > > Thanks! > > Mike > > > > > _______________________________________________ > ros-users mailing list > ros-users@code.ros.org > https://code.ros.org/mailman/listinfo/ros-users > -- Tully Foote Systems Engineer Willow Garage, Inc. tfoote@willowgarage.com (650) 475-2827