name: Testing and Linting

on: 
  push:
    branches:
      - main
  pull_request:

jobs:
  test_and_lint:
    runs-on: ubuntu-latest
    strategy:
        matrix:
          go-version: [ '1.19', '1.20' ]

    steps:
      - uses: actions/checkout@v3

      - name: Set up Go
        uses: actions/setup-go@v4
        with:
          go-version: ${{ matrix.go-version }}

      - name: Test
        run: go test -v ./...

      - name: Lint
        uses: golangci/golangci-lint-action@v3