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 Node.js uses: actions/setup-node@v4 with: node-version: "20" cache: "npm" cache-dependency-path: package-lock.json - name: Install dependencies # Use npm install instead of npm ci to correctly resolve platform-specific # optional dependencies (e.g., @tailwindcss/oxide, lightningcss binaries) run: npm install - 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 }}