Skip to content

C++ coverage assumes that package name is the same as folder name #41

Open
@josephduchesne

Description

@josephduchesne

My workplace uses the company name as a package prefix for internal ROS packages, and as a result most packages are "companyname_foo". To cut down to redundancy, these packages are checked out as just "foo". Unfortunately this line seems to depend on package name and package folder name being the same, since it's filtering out code that doesn't have the package name in the path:

COMMAND ${LCOV_PATH} --extract ${PROJECT_BINARY_DIR}/${Coverage_NAME}.info.removed "'*/${PROJECT_NAME}/*'" --output-file ${PROJECT_BINARY_DIR}/${Coverage_NAME}.info.cleaned || (exit 0)

The result is an empty code coverage folder.

I'm not sure what the cleanest way to fix this is though. I'd love to use this package.

Sanitised logfile:

Writing data to companyname_foldername_coverage_report.total
Summary coverage rate:
  lines......: 71.8% (244 of 340 lines)
  functions..: 48.5% (83 of 171 functions)
  branches...: no data found
/usr/bin/lcov --remove companyname_foldername_coverage_report.total */companyname_foldername/generated_cpp/* --output-file /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.removed || ( exit 0 )
Reading tracefile companyname_foldername_coverage_report.total
Deleted 0 files
Writing data to /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.removed
Summary coverage rate:
  lines......: 71.8% (244 of 340 lines)
  functions..: 48.5% (83 of 171 functions)
  branches...: no data found
/usr/bin/lcov --extract /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.removed '*/companyname_foldername/*' --output-file /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.cleaned || ( exit 0 )
Reading tracefile /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.removed
Extracted 0 files
Writing data to /home/companyname/Dev/catkin_ws/build/companyname_foldername/companyname_foldername_coverage_report.info.cleaned
Summary coverage rate:
  lines......: no data found
  functions..: no data found
  branches...: no data found

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions