DONT MERGE YET - REVIEW COMMENTS PLEASE - Test renovation - in preparation for fixing the Hook handler bug and adding other features. #724
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
jobs: | |
test: | |
strategy: | |
matrix: | |
go-version: [ 1.16.x, 1.17.x, oldstable, stable ] # Lowest supported and current stable versions. | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install Go | |
uses: actions/setup-go@v5 | |
with: | |
go-version: ${{ matrix.go-version }} | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Go cache | |
uses: actions/cache@v4 | |
with: | |
path: | | |
~/go/pkg/mod | |
~/.cache/go-build | |
key: ${{ runner.os }}-go-cache-${{ hashFiles('**/go.sum') }} | |
restore-keys: | | |
${{ runner.os }}-go-cache | |
- name: Run gofmt | |
run: gofmt -d -e . 2>&1 | tee outfile && test -z "$(cat outfile)" && rm outfile | |
- name: Run staticcheck | |
if: matrix.go-version == 'stable' | |
uses: dominikh/[email protected] | |
with: | |
version: "latest" | |
install-go: false | |
cache-key: ${{ matrix.go }} | |
- name: Run go vet | |
run: | | |
go vet ./... | |
cd _examples && go vet ./... && cd .. | |
- name: Run go test | |
run: | | |
go test -v -race -coverprofile=coverage.txt -covermode=atomic ./... | |
cd _examples && go test -v -race ./... && cd .. | |
- name: Run godog | |
run: | | |
go install ./cmd/godog | |
godog -f progress --strict | |
- name: Report on code coverage | |
if: matrix.go-version == 'stable' | |
uses: codecov/codecov-action@v4 | |
with: | |
file: ./coverage.txt |