a1a097ee81
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
32 lines
830 B
Bash
Executable File
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
|