ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Can't run unit tests for KnowRob

asked 2015-02-05 02:17:27 -0500

Alexey Reshetnyak gravatar image

I'm trying to do so according to the documentation. For example:

rosrun rosprolog rosprolog-test comp_temporal

Warning: /home/al/catkin_ws/src/stacks/knowrob/knowrob_common/prolog/
    Singleton variable in branch: OneOfList
ERROR: /home/al/catkin_ws/src/stacks/knowrob/comp_temporal/prolog/comp_temporal.plt:21:
    plunit:begin_tests/4: Undefined procedure: plunit:'$declare_module'/5
Warning: /home/al/catkin_ws/src/stacks/knowrob/comp_temporal/prolog/comp_temporal.plt:21:
    Goal (directive) failed: plunit:begin_tests(comp_temporal)
ERROR: /home/al/catkin_ws/src/stacks/knowrob/comp_temporal/prolog/comp_temporal.plt:107:
    PL-Unit: cannot close unit comp_temporal: no open unit
Warning: /home/al/catkin_ws/src/stacks/knowrob/comp_temporal/prolog/comp_temporal.plt:107:
    Goal (directive) failed: plunit_comp_temporal:end_tests(comp_temporal)
ERROR: Prolog initialisation failed:
ERROR: '<meta-call>'/1: Undefined procedure: plunit_comp_temporal:'unit test'/4
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2015-02-05 03:02:29 -0500

moritz gravatar image

I've just tested on Indigo/Trusty and got the same error. In the SWI Prolog version that comes with trusty, the 'plunit' unit testing library is installed by default, which has not been the case in Precise. We therefore still have a copy of plunit in the knowrob_common package. As a workaround, you can try to delete the file knowrob/knowrob_common/prolog/ I'll have a look at this later and try to find a cleaner solution.

edit flag offensive delete link more


Thank you! It works.

Alexey Reshetnyak gravatar image Alexey Reshetnyak  ( 2015-02-05 04:48:36 -0500 )edit

Question Tools

1 follower


Asked: 2015-02-05 02:17:27 -0500

Seen: 318 times

Last updated: Feb 05 '15