diff --git a/.travis.yml b/.travis.yml index 2c796907..1b2ebbe3 100644 --- a/.travis.yml +++ b/.travis.yml @@ -7,13 +7,18 @@ go: - 1.6 env: - - TOOLS_CMD=golang.org/x/tools/cmd + global: + - TOOLS_CMD=golang.org/x/tools/cmd + - PATH=$GOROOT/bin:$PATH install: - go get ${TOOLS_CMD}/vet + - go get ${TOOLS_CMD}/cover + - go get github.com/modocache/gover + - go get github.com/mattn/goveralls script: - - sudo -E /bin/bash -c 'PATH=$GOROOT/bin:$PATH ./test' + - ./test notifications: email: false diff --git a/README.md b/README.md index a6732525..2a00c070 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,5 @@ [![Build Status](https://travis-ci.org/appc/cni.svg?branch=master)](https://travis-ci.org/appc/cni) +[![Coverage Status](https://coveralls.io/repos/github/appc/cni/badge.svg?branch=master)](https://coveralls.io/github/appc/cni?branch=master) # cni - the Container Network Interface diff --git a/test b/test index faccf1c5..38117718 100755 --- a/test +++ b/test @@ -33,8 +33,23 @@ fi split=(${TEST// / }) TEST=${split[@]/#/${REPO_PATH}/} -echo "Running tests..." -go test ${COVER} $@ ${TEST} +echo -n "Running tests " +function testrun { + sudo -E bash -c "umask 0; PATH=\$GOROOT/bin:\$PATH go test -covermode set $@" +} +if [ ! -z "${COVERALLS}" ]; then + echo "with coverage profile generation..." + i=0 + for t in ${TEST}; do + testrun "-coverprofile ${i}.coverprofile ${t}" + i=$((i+1)) + done + gover + goveralls -service=travis-ci -coverprofile=gover.coverprofile -repotoken=$COVERALLS_TOKEN +else + echo "without coverage profile generation..." + testrun "${TEST}" +fi echo "Checking gofmt..." fmtRes=$(gofmt -l $FMT)