github.com/lovung/GoCleanArchitecture@v0.0.0-20210302152432-50d91fd29f9f/scripts/test.sh (about) 1 #!/bin/bash 2 3 RED=`tput setaf 1` 4 GRN=`tput setaf 2` 5 PUR=`tput setaf 13` 6 RESET=`tput sgr0` 7 TEST_RESULT_DIR="${TEST_RESULTS:-./tests/results}" 8 mkdir -p ${TEST_RESULT_DIR} 9 echo "${GRN}Listing all packages${RESET}" 10 PKG_LIST+="$(go list ./... | grep -v /vendor/ | grep -v migrations ) " 11 echo "----------------" 12 echo "${GRN}Test:${RESET}" 13 14 go test -v -coverpkg=./... -covermode=count ${PKG_LIST} -coverprofile ${TEST_RESULT_DIR}/.testCoverage.txt | tee ${TEST_RESULT_DIR}/test.log; echo ${PIPESTATUS[0]} > ${TEST_RESULT_DIR}/test.out 15 cat ${TEST_RESULT_DIR}/test.log | go-junit-report > ${TEST_RESULT_DIR}/report.xml 16 17 echo "----------------" 18 echo "${GRN}Result:${RESET}" 19 go tool cover -func ${TEST_RESULT_DIR}/.testCoverage.txt 20 exit $(cat ${TEST_RESULT_DIR}/test.out) 21