name: Testing
on: [push, pull_request]

jobs:
  test:
    strategy:
      matrix:
        go-version: ["1.20", 1.21.x, 1.22.x]
        os: [ubuntu-latest, macos-latest, windows-latest]
    runs-on: ${{ matrix.os }}

    steps:
      - name: Setup Go
        uses: actions/setup-go@v5
        with:
          go-version: ${{ matrix.go-version }}

      - name: Checkout code
        uses: actions/checkout@v4

      - name: Test
        run: |
          go version
          go test . -v -cover
