| #!/bin/sh |
| |
| prog=$(basename $0) |
| |
| # Expect to be run from the parent LNT directory. |
| if [ ! -f README.txt ] || [ ! -d lnt ]; then |
| printf 1>&2 "%s: expected to be run from base LNT directory\n" "$prog" |
| exit 1 |
| fi |
| |
| # Check arguments. |
| if [ $# == "0" ]; then |
| printf 1>&2 "usage: %s {lit-arguments}*\n" "$prog" |
| exit 1 |
| fi |
| |
| # First, remove any existing coverage data files. |
| rm -f tests/.coverage |
| find tests -name .coverage.\* -exec rm {} \; |
| |
| # Next, run the tests. |
| lit -sv --param check-coverage=1 "$@" |
| |
| # Next, move all the data files from subdirectories up. |
| find tests -name .coverage.\* -exec mv {} tests \; |
| |
| # Combine all the data files. |
| (cd tests && python -m coverage combine) |
| |
| # Finally, generate the report. |
| (cd tests && python -m coverage report) |
| |
| # Generate the HTML report, if requested. |
| if [ ! -z "$GENERATE_HTML" ]; then |
| (cd tests && python -m coverage html) |
| fi |