diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml new file mode 100644 index 0000000..769aa71 --- /dev/null +++ b/.github/workflows/test.yml @@ -0,0 +1,29 @@ +on: [push, pull_request] +name: Test +env: + GOPROXY: "https://proxy.golang.org" +jobs: + test: + strategy: + matrix: + go-version: [1.14.x, 1.15.x] + os: [ubuntu-latest, macos-latest, windows-latest] + runs-on: ${{ matrix.os }} + steps: + - name: Install Go + uses: actions/setup-go@v1 + with: + go-version: ${{ matrix.go-version }} + - name: Checkout code + uses: actions/checkout@v2 + - name: Format + run: gofmt -d . + - name: Lint + if: matrix.os != 'windows-latest' + run: | + go get -v -u golang.org/x/lint/golint + $(go env GOPATH)/bin/golint -set_exit_status . + - name: Vet + run: go vet $(go list ./... | grep -v /vendor/) + - name: Test + run: go test -v -race ./...