skia2/tools/coverage.sh
commit-bot@chromium.org a1a097ee81 increase coverage of SkPath.cpp, remove unused code
Using Mike Klein's excellent coverage tool, increase the
unit testing of SkPath.cpp from 70% to 95%.

Along the way, determined that these functions were not
maintained or used:

SkPath::pathTo
SkPath::contains

as well as a large block of SkPath::cheapGetDirection().

Changed SkPath::validate() to permit infinities in
the path data points.

Fixed errors in preserving direction.
Fixed error setting direction when convexity is unknown.

Added missing conic to moveTo only detector.

BUG=
R=bsalomon@google.com, reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/65493004

git-svn-id: http://skia.googlecode.com/svn/trunk@12291 2bbb7eff-a529-9590-31e7-b0007b416f81
2013-11-14 16:53:22 +00:00

32 lines
830 B
Bash
Executable File

#!/bin/sh
# Run from Skia trunk something like this:
# $ tools/coverage.sh tests
# or
# $ tools/coverage.sh gm
set -x
set -e
COMMAND=$@
GCOV=$(realpath tools/gcov_shim)
QUIET=-q
# Build all of Skia.
./gyp_skia
ninja -C out/Coverage
# Generate a zero-baseline so files not covered by $COMMAND will still show up in the report.
# This reads the .gcno files that are created at compile time.
lcov $QUIET --gcov-tool=$GCOV -c -b out/Coverage -d out/Coverage -o /tmp/baseline -i
# Running the binary generates the real coverage information, the .gcda files.
out/Coverage/$COMMAND
lcov $QUIET --gcov-tool=$GCOV -c -b out/Coverage -d out/Coverage -o /tmp/coverage
lcov $QUIET -a /tmp/baseline -a /tmp/coverage -o /tmp/merged
genhtml $QUIET /tmp/merged --legend -o out/Coverage/report
xdg-open out/Coverage/report/index.html