| name: test-bindings | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| env: | |
| CMAKE_GENERATOR: Ninja | |
| permissions: | |
| contents: read | |
| jobs: | |
| python_bindings: | |
| name: Test GBM Python ${{ matrix.python-version }} bindings on ${{ matrix.os }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| os: [ ubuntu-latest, macos-latest, windows-latest ] | |
| python-version: [ "3.10", "3.11", "3.12", "3.13" ] | |
| steps: | |
| - uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@83679a892e2d95755f2dac6acb0bfd1e9ac5d548 # v6.1.0 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install GBM Python bindings on ${{ matrix.os }} | |
| run: python -m pip install . | |
| - name: Run example on ${{ matrix.os }} under Python ${{ matrix.python-version }} | |
| run: python bindings/python/google_benchmark/example.py |