2018-12-06 13:19:32 -05:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
set -o pipefail
|
|
|
|
|
|
|
|
|
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null && pwd )"
|
|
|
|
|
|
|
|
|
|
GO=$1
|
|
|
|
|
GOFLAGS=$2
|
|
|
|
|
PACKAGES=$3
|
|
|
|
|
TESTS=$4
|
|
|
|
|
TESTFLAGS=$5
|
2020-01-21 18:19:49 +05:30
|
|
|
GOBIN=$6
|
2018-12-06 13:19:32 -05:00
|
|
|
|
|
|
|
|
PACKAGES_COMMA=$(echo $PACKAGES | tr ' ' ',')
|
|
|
|
|
|
|
|
|
|
echo "Packages to test: $PACKAGES"
|
|
|
|
|
find . -name 'cprofile*.out' -exec sh -c 'rm "{}"' \;
|
|
|
|
|
find . -type d -name data -not -path './vendor/*' | xargs rm -rf
|
|
|
|
|
|
2019-12-17 19:28:25 +05:30
|
|
|
$GO test $GOFLAGS -run=$TESTS $TESTFLAGS -v -timeout=2000s -covermode=count -coverpkg=$PACKAGES_COMMA -exec $DIR/test-xprog.sh $PACKAGES 2>&1 > >( tee output )
|
2018-12-06 13:19:32 -05:00
|
|
|
EXIT_STATUS=$?
|
|
|
|
|
|
2020-01-21 18:19:49 +05:30
|
|
|
cat output | $GOBIN/go-junit-report > report.xml
|
2018-12-06 13:19:32 -05:00
|
|
|
rm output
|
2019-05-15 00:59:28 -04:00
|
|
|
find . -name 'cprofile*.out' -exec sh -c 'tail -n +2 "{}" >> cover.out ; rm "{}"' \;
|
2018-12-06 13:19:32 -05:00
|
|
|
rm -f config/*.crt
|
|
|
|
|
rm -f config/*.key
|
|
|
|
|
|
|
|
|
|
exit $EXIT_STATUS
|