"catkin run_tests" finding non-installed resource
"catkin run_tests" finding non-installed resource
I have 2 packages, baa
and foo
. There are 2 .test
files in pkg foo
.
Catkin workspace is configured with catkin config --install
, so I expect only installed resource can be accessed from rostest
. Files in config
are not installed.
However during catkin run_test
,
foo.test
, which tries to find the file inconfig
folder under the samefoo
package, seems to be able to find it.baa.test
, which tries to find the file inconfig
folder underbaa
package, can't find it.
This result is unintuitive to me; I'd expect in neither case the file should be found. Am I wrong?
$ tree -L 3
.
├── baa
│ ├── CMakeLists.txt
│ ├── config
│ │ └── rsc.yaml
│ └── package.xml
└── foo
├── a.launch
├── CMakeLists.txt
├── config
│ └── rsc.yaml
├── package.xml
└── test
├── baa.test
└── foo.test
The entire sources can be found here.
Full set of commands to reproduce the case:
$ sudo apt-get install python-catkin-tools
$ DIR_TEST=/tmp/rostest_test
$ mkdir -p $DIR_TEST/src && cd $DIR_TEST/src
$ git clone https://github.com/130s/prooving_grounds.git -b rostest_install_rsc
$ mv prooving_grounds/ros/rostest_runtests/ . && rm -fr prooving_grounds/ && cd ..
$ catkin config --install && catkin run_tests
:
[build] Runtime: 35.3 seconds total.
[build] Note: Workspace packages have changed, please re-source setup files to use them.
$ catkin_test_results
build/foo/test_results/foo/MISSING-rostest-test_baa.xml: 1 tests, 0 errors, 1 failures, 0 skipped
Summary: 3 tests, 0 errors, 1 failures, 0 skipped
$ more build/foo/test_results/foo/MISSING-rostest-test_baa.xml
<?xml version="1.0" encoding="UTF-8"?>
<testsuite tests="1" failures="1" time="1" errors="0" name="rostest-test_baa.xml">
<testcase name="test_ran" status="run" time="1" classname="Results">
<failure message="Unable to find test results for rostest-test_baa.xml, test did not run.
Expected results in /tmp/ros_prove/build/foo/test_results/foo/rostest-test_baa.xml" type=""/>
</testcase>
</testsuite>
$
Environment:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.5 LTS
$ apt-cache policy python-catkin-tools
python-catkin-tools:
Installed: 0.4.4-1
Candidate: 0.4.4-1
Asked by 130s on 2018-10-27 04:05:17 UTC
Comments
you don't seem to do this.
Can you try and see whether that makes a difference?
Asked by gvdhoorn on 2018-10-27 05:12:49 UTC