Skip to content

Commit

Permalink
Magically improve coverage (#6345)
Browse files Browse the repository at this point in the history
automerge
  • Loading branch information
ryoqun authored and solana-grimes committed Oct 16, 2019
1 parent 83c1831 commit b7b71b3
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 2 deletions.
4 changes: 4 additions & 0 deletions ci/test-coverage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ scripts/coverage.sh
report=coverage-"${CI_COMMIT:0:9}".tar.gz
mv target/cov/report.tar.gz "$report"
upload-ci-artifact "$report"

gzip target/cov/coverage-stderr.log
upload-ci-artifact target/cov/coverage-stderr.log.gz

annotate --style success --context lcov-report \
"lcov report: <a href=\"artifact://$report\">$report</a>"

Expand Down
7 changes: 5 additions & 2 deletions scripts/coverage.sh
Original file line number Diff line number Diff line change
Expand Up @@ -14,13 +14,14 @@ reportName="lcov-${CI_COMMIT:0:9}"

if [[ -n $1 ]]; then
crate="--package $1"
shift
else
crate="--all --exclude solana-local-cluster"
fi

coverageFlags=(-Zprofile) # Enable coverage
coverageFlags+=("-Clink-dead-code") # Dead code should appear red in the report
coverageFlags+=("-Ccodegen-units=1") # Disable ThinLTO which corrupts debuginfo (see [rustc issue #45511]).
coverageFlags+=("-Ccodegen-units=1") # Disable code generation parallelism which is unsupported under -Zprofile (see [rustc issue #51705]).
coverageFlags+=("-Cinline-threshold=0") # Disable inlining, which complicates control flow.
coverageFlags+=("-Coverflow-checks=off") # Disable overflow checks, which create unnecessary branches.

Expand All @@ -37,7 +38,9 @@ rm -rf target/cov/$reportName

source ci/rust-version.sh nightly
# shellcheck disable=SC2086 #
_ cargo +$rust_nightly test --target-dir target/cov --lib $crate
RUST_LOG=solana=trace _ cargo +$rust_nightly test --target-dir target/cov --lib --no-run $crate "$@"
# shellcheck disable=SC2086 #
RUST_LOG=solana=trace _ cargo +$rust_nightly test --target-dir target/cov --lib $crate "$@" 2> target/cov/coverage-stderr.log

echo "--- grcov"

Expand Down

0 comments on commit b7b71b3

Please sign in to comment.