gather test coverage

This commit is contained in:
Anton Kaliaev 2017-11-21 18:12:12 -06:00
parent 52ec4efe27
commit 7868a3358f
No known key found for this signature in database
GPG Key ID: 7B6881D965918214
2 changed files with 23 additions and 5 deletions

View File

@ -12,11 +12,11 @@ checkout:
- rm -rf $REPO
- mkdir -p $HOME/.go_workspace/src/github.com/$CIRCLE_PROJECT_USERNAME
- mv $HOME/$CIRCLE_PROJECT_REPONAME $REPO
# - git submodule sync
# - git submodule update --init # use submodules
- go version
test:
override:
- "go version"
- "cd $REPO && make get_vendor_deps && make metalinter_test"
- "cd $REPO && make test_integrations"
- cd $REPO && make get_vendor_deps && make metalinter_test && bash ./test.sh
post:
- cd "$REPO" && bash <(curl -s https://codecov.io/bash) -f coverage.txt
- cd "$REPO" && mv coverage.txt "${CIRCLE_ARTIFACTS}"

18
test.sh Executable file
View File

@ -0,0 +1,18 @@
#!/usr/bin/env bash
set -e
echo "" > coverage.txt
echo "==> Running unit tests"
for d in $(go list ./... | grep -v vendor); do
go test -race -coverprofile=profile.out -covermode=atomic "$d"
if [ -f profile.out ]; then
cat profile.out >> coverage.txt
rm profile.out
fi
done
echo "==> Running integration tests (./tests)"
find . -path ./vendor -prune -o -name "*.sock" -exec rm {} \;
make install
bash tests/test.sh