name: Test Suite

on:
  push:
    branches: [ master ]
  pull_request:

jobs:
  test:
    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v4

    - uses: pnpm/action-setup@v4
      with:
        version: latest

    - name: Setup Node.js
      uses: actions/setup-node@v4
      with:
        cache: 'pnpm'

    - name: Install dependencies
      run: pnpm install

    - name: Run Typecheck
      run: pnpm run typecheck

    - name: Run Tests
      run: pnpm test
