coverage.sh 687 B

123456789101112131415161718192021222324252627
  1. #!/bin/bash
  2. set -e
  3. # Generate the lcov.info file
  4. forge coverage --report lcov
  5. # Filter out unnecessary stuff from the coverage report
  6. lcov \
  7. --rc branch_coverage=1 \
  8. --remove lcov.info \
  9. --output-file filtered-lcov.info \
  10. "*node_modules*" "*mock*" "contracts/libraries/external/*.sol" \
  11. # Generate the filtered summary
  12. lcov \
  13. --rc branch_coverage=1 \
  14. --list filtered-lcov.info
  15. # Generate the html coverage file
  16. genhtml \
  17. --rc branch_coverage=1 \
  18. --output-directory coverage \
  19. --ignore-errors category \
  20. --ignore-errors category,category \
  21. filtered-lcov.info
  22. echo "Test coverage results successfully generated in the 'coverage' directory"