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

     1  #!/bin/bash
     2  
     3  main() {
     4  	go generate ./...
     5  
     6  	echo gotest -v -covermode=count -coverprofile=./reports/.coverage.out -cover ./...
     7  	time gotest -v -covermode=count -coverprofile=./reports/.coverage.out -cover ./...
     8  	printf "\n"
     9  
    10  	# go install github.com/axw/gocov/gocov@latest
    11  
    12  	echo gocov convert ./reports/.coverage.out '|' jq --sort-keys . '>' .coverage.json
    13  	time gocov convert ./reports/.coverage.out | jq --sort-keys . >.coverage.json
    14  	printf "\n"
    15  
    16  	echo jq . .coverage.json '|' gocov annotate -ceiling 100 - '|' tee reports/coverage-annotations.txt
    17  	time jq . .coverage.json | gocov annotate -ceiling 100 - | tee reports/coverage-annotations.txt
    18  	printf "\n" | tee -a reports/coverage-annotations.txt
    19  
    20  	echo jq . .coverage.json '|' gocov report '|' tee reports/coverage-summary.txt
    21  	time jq . .coverage.json | gocov report | tee reports/coverage-summary.txt
    22  	printf "\n"
    23  }
    24  
    25  time main
    26  
    27  # echo git restore ./cmd/*/.version.txt
    28  # time git restore ./cmd/*/.version.txt
    29  # printf "\n"