Run tests in GitHub Actions (#426)
Этот коммит содержится в:
родитель
7d984effb3
коммит
dfe99eadf5
1 изменённых файлов: 52 добавлений и 0 удалений
52
.github/workflows/test.yml
предоставленный
Обычный файл
52
.github/workflows/test.yml
предоставленный
Обычный файл
|
@ -0,0 +1,52 @@
|
|||
name: test
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
jobs:
|
||||
test:
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [ 1.16.x, 1.17.x ]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@v2
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
- name: Go cache
|
||||
uses: actions/cache@v2
|
||||
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 golint
|
||||
run: |
|
||||
go install golang.org/x/lint/golint@latest
|
||||
golint -set_exit_status ./...
|
||||
cd _examples && golint -set_exit_status ./... && cd ..
|
||||
- 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 == '1.17.x'
|
||||
uses: codecov/codecov-action@v1
|
||||
with:
|
||||
file: ./coverage.txt
|
Загрузка…
Создание таблицы
Сослаться в новой задаче