name: test
on:
  push:
    branches:
      - v2
  pull_request:
    branches:
      - v2

jobs:
  build:
    strategy:
      matrix:
        os: [ 'ubuntu-latest', 'windows-latest', 'macos-latest', 'macos-14' ]
        go: [ '1.23', '1.24' ]
    runs-on: ${{ matrix.os }}
    name: ${{ matrix.go }}/${{ matrix.os }}
    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 0
      - name: Setup go ${{ matrix.go }}
        uses: actions/setup-go@v5
        with:
          go-version: ${{ matrix.go }}
      - name: Run unit tests
        run: go test -race ./...
  release-check:
    if: ${{ github.ref != 'refs/heads/v2' }}
    uses: ./.github/workflows/release.yml
    with:
      args: --snapshot
