name: CI

on: [push]

jobs:
  unit:
    runs-on: ubuntu-latest
    strategy:
      matrix:
        node: [20, 22, 24]

    steps:
    - name: Checkout code
      uses: actions/checkout@v6

    - name: Setup Node.js version
      uses: actions/setup-node@v6
      with:
        node-version: ${{ matrix.node }}
        cache: 'yarn'

    - name: Install dependencies
      run: yarn install --frozen-lockfile

    - name: Run lint
      run: yarn lint

    - name: Run tests
      run: yarn test
