name: Test

on:
  workflow_dispatch:
  push:
    branches: [ main ]
  pull_request:
    branches: [ main ]

jobs:
  test:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v3
    - uses: actions/cache@v3
      with:
        path: |
          ~/go/pkg/mod
          ~/go/bin
          ~/.cache
        key: livekit-protocol

    - name: Set up Go
      uses: actions/setup-go@v3
      with:
        go-version: 1.17

    - name: Download Go modules
      run: go mod download

    - name: Static Check
      uses: dominikh/staticcheck-action@v1.2.0
      with:
        version: "2021.1.1"

    - name: Mage Test
      uses: magefile/mage-action@v2
      with:
        version: latest
        args: test
