language: go
sudo: false

go:
  - "1.12.x"
  - "1.13.x"
  - tip

env:
  - GO111MODULE=on

script:
  - go generate ./... && test `git ls-files --modified | wc -l` = 0
  - go test -race -v -bench=. -coverprofile=coverage.txt -covermode=atomic ./...

after_success:
  - bash <(curl -s https://codecov.io/bash)
