summaryrefslogtreecommitdiffstats
path: root/test.sh
blob: 0a8d91e85e99507ab9d29e59a16da5fb3b932d41 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env bash

set -e
echo "" > coverage.txt

export GOFLAGS=-mod=vendor

use_go_test=false
if command -v gotest; then
    use_go_test=true
fi

for d in $( find ./* -maxdepth 10 ! -path "./vendor*" ! -path "./.git*" ! -path "./scripts*" -type d); do
    if ls $d/*.go &> /dev/null; then
        args="-race -coverprofile=profile.out -covermode=atomic $d"
        if [ "$use_go_test" == true ]; then
            gotest $args
        else
            go test $args
        fi
        if [ -f profile.out ]; then
            cat profile.out >> coverage.txt
            rm profile.out
        fi
    fi
done