name: Unit Tests
on: workflow_call
jobs:
  unit-tests:
    runs-on: '${{ matrix.os }}'
    strategy:
      matrix:
        os:
          - ubuntu-24.04
        node-version: [ 20.x, 22.x, 24.x ]
    steps:
      - uses: actions/checkout@v6
      - name: 'Install node.js ${{ matrix.node-version }}'
        uses: actions/setup-node@v6
        with:
          node-version: '${{ matrix.node-version }}'
      - name: Run unit tests
        run: |
          [[ -f ./bin/ci-setup ]] && ./bin/ci-setup
          npm install
          npm run ci
