Skip to content

Test env setup

Test env setup #14

name: Tests
# on:
# pull_request:
env:
GOFLAGS: "-count=1"
jobs:
unit-tests:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.21.x'
- name: Install protoc
run: sudo apt install -y protobuf-compiler
- name: Unit tests and linters
run: |
go run mage.go -v Generate
go run mage.go -v Check
go run mage.go -v TestWithCoverage
- name: Upload codecov report
uses: codecov/codecov-action@v4
with:
file: ./coverage.txt
token: ${{ secrets.CODECOV_TOKEN }}
e2e-tests:
runs-on: ubuntu-latest
needs: unit-tests
steps:
- uses: actions/checkout@v4
- name: Setup Go
uses: actions/setup-go@v5
with:
go-version: '1.21.x'
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: E2E basic test
run: go run mage.go -v TestE2EBasic
- name: E2E NAT test
run: go run mage.go -v TestE2ENAT
verify-build:
needs: [unit-tests, e2e-tests]
uses: ./.github/workflows/build-packages.yml
secrets: inherit