name: Reusable Standard Test

on:
  workflow_call:
    inputs:
      python-version:
        required: true
        type: string
      cmake-args:
        required: false
        type: string
        default: ''
      runs-on:
        required: true
        type: string

env:
  PYTHONDEVMODE: 1
  PIP_BREAK_SYSTEM_PACKAGES: 1
  PIP_ONLY_BINARY: numpy
  FORCE_COLOR: 3
  PYTEST_TIMEOUT: 300
  # For cmake:
  VERBOSE: 1
  CMAKE_COLOR_DIAGNOSTICS: 1

jobs:
  standard:
    name: 🧪
    runs-on: ${{ inputs.runs-on }}
    timeout-minutes: 90

    steps:
      - uses: actions/checkout@v7

      - name: Setup Python ${{ inputs.python-version }}
        id: python
        uses: actions/setup-python@v6
        with:
          python-version: ${{ inputs.python-version }}
          allow-prereleases: true
          # Python 3.13.4 broken on Windows
          check-latest: >-
            ${{ inputs.python-version == '3.13' && runner.os == 'Windows' }}

      - name: Setup Boost (Linux)
        if: runner.os == 'Linux'
        run: sudo apt-get update && sudo apt-get install -y libboost-dev

      - name: Setup Boost (macOS)
        if: runner.os == 'macOS'
        run: brew install boost

      - name: Install uv
        uses: astral-sh/setup-uv@v8.2.0
        with:
          enable-cache: true

      - name: Prepare env
        run: uv pip install --python=python --system -r tests/requirements.txt

      - name: Setup annotations on Linux
        if: runner.os == 'Linux'
        run: uv pip install --python=python --system pytest-github-actions-annotate-failures

      # TODO Resolve Windows Ninja shared object issue on Python 3.8+
      - name: Use Ninja except on Windows
        if: runner.os != 'Windows'
        run: echo "CMAKE_GENERATOR=Ninja" >> "$GITHUB_ENV"

      # Pass setup-python's resolved interpreter path to CMake so FindPython
      # does not select a different interpreter (e.g. Homebrew's 3.14 instead
      # of setup-python's 3.14t).
      - name: Configure
        run: >
          cmake -S. -Bbuild -Werror=dev
          -DPYBIND11_WERROR=ON
          -DPYBIND11_PYTEST_ARGS=-v
          -DDOWNLOAD_CATCH=ON
          -DDOWNLOAD_EIGEN=ON
          -DPYTHON_EXECUTABLE=${{ steps.python.outputs.python-path }}
          ${{ inputs.cmake-args }}

      - name: Build
        run: cmake --build build

      - name: Python tests
        run: cmake --build build --target pytest

      - name: C++ tests
        timeout-minutes: 3
        run: cmake --build build --target cpptest

      - name: Interface test
        run: cmake --build build --target test_cmake_build

      - name: Visibility test
        run: cmake --build build --target test_cross_module_rtti

      - name: Setuptools helpers test
        run: |
          uv pip install --python=python --system setuptools
          pytest tests/extra_setuptools
