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
|
Загрузка…
Создание таблицы
Сослаться в новой задаче