name: operator-tests

on: 
  pull_request:
  push:
    branches:
    - master

jobs:
  tests:
    name: Unit tests and coverage
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v2
    - uses: actions/setup-go@v2
      with:
          go-version: "^1.15.6"
    - name: Make dependencies
      run: make deps mocks
    - name: Compile
      run: make linux
    - name: Run unit tests
      run: go test -race -covermode atomic -coverprofile=coverage.out ./...
    - name: Convert coverage to lcov
      uses: jandelgado/gcov2lcov-action@v1.0.8
    - name: Coveralls
      uses: coverallsapp/github-action@master
      with:
        github-token: ${{ secrets.GITHUB_TOKEN }}
        path-to-lcov: coverage.lcov
