name: Test Suite

on:
  pull_request:
    branches:
      - '*'
  push:
    branches:
      - main
      - master

jobs:
  test:
    runs-on: ubuntu-latest

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

      - name: Setup project
        uses: ./.github/actions/setup-project
        with:
          check-lockfile: 'true'
          rebuild-node-pty-path: 'apps/server'

      - name: Run package tests
        run: npm run test:packages
        env:
          NODE_ENV: test

      - name: Run server tests with coverage
        run: npm run test:server:coverage
        env:
          NODE_ENV: test

      # - name: Upload coverage reports
      #   uses: codecov/codecov-action@v4
      #   if: always()
      #   with:
      #     files: ./apps/server/coverage/coverage-final.json
      #     flags: server
      #     name: server-coverage
      #   env:
      #     CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
