github.com/vpayno/adventofcode-2022-golang-workspace@v0.0.0-20230605190011-dbafed5593de/scripts/go-test-with-coverage (about)

     1  #!/bin/bash
     2  
     3  main() {
     4  	echo go generate ./...
     5  	go generate ./...
     6  	printf "\n"
     7  
     8  	echo gotest -v -covermode=count -coverprofile=./reports/.coverage.out -cover ./...
     9  	time gotest -v -covermode=count -coverprofile=./reports/.coverage.out -cover ./...
    10  	printf "\n"
    11  
    12  	# go install golang.org/x/tools/cmd/cover@latest
    13  
    14  	echo go tool cover -html=./reports/.coverage.out -o=reports/coverage.html
    15  	time go tool cover -html=./reports/.coverage.out -o=reports/coverage.html
    16  	printf "\n"
    17  
    18  	echo go tool cover -func=./reports/.coverage.out -o=reports/coverage.txt
    19  	time go tool cover -func=./reports/.coverage.out -o=reports/coverage.txt
    20  	printf "\n"
    21  
    22  	echo gocover-cobertura '<' ./reports/.coverage.out '>' ./reports/coverage.xml
    23  	time gocover-cobertura < ./reports/.coverage.out > ./reports/coverage.xml
    24  	printf "\n"
    25  
    26  	printf "=== ./reports/coverage.txt ===\n"
    27  	cat reports/coverage.txt
    28  	printf "\n"
    29  }
    30  
    31  time main
    32  
    33  # echo git restore ./cmd/*/.version.txt
    34  # time git restore ./cmd/*/.version.txt
    35  # printf "\n"