Skip to content
Snippets Groups Projects

Tests/CI scaffold

Merged Erick Hitter requested to merge develop into master
7 files
+ 145
2
Compare changes
  • Side-by-side
  • Inline
Files
7
tools/coverage.sh 0 → 100755
+ 29
0
 
#!/bin/bash
 
#
 
# Code coverage generation
 
 
COVERAGE_DIR="${COVERAGE_DIR:-coverage}"
 
PKG_LIST=$(go list ./... | grep -v /vendor/)
 
 
# Create the coverage files directory
 
mkdir -p "$COVERAGE_DIR";
 
 
# Create a coverage file for each package
 
for package in ${PKG_LIST}; do
 
go test -covermode=count -coverprofile "${COVERAGE_DIR}/${package##*/}.cov" "$package" ;
 
done ;
 
 
# Merge the coverage profile files
 
echo 'mode: count' > "${COVERAGE_DIR}"/coverage.cov ;
 
tail -q -n +2 "${COVERAGE_DIR}"/*.cov >> "${COVERAGE_DIR}"/coverage.cov ;
 
 
# Display the global code coverage
 
go tool cover -func="${COVERAGE_DIR}"/coverage.cov ;
 
 
# If needed, generate HTML report
 
if [ "$1" == "html" ]; then
 
go tool cover -html="${COVERAGE_DIR}"/coverage.cov -o coverage.html ;
 
fi
 
 
# Remove the coverage files directory
 
rm -rf "$COVERAGE_DIR";
Loading