get/set animation node positions #196
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Python Tests | |
| on: | |
| push: | |
| # Exclude beta and main: those branches re-trigger this workflow via | |
| # workflow_call from beta-release.yml / release.yml. Without the exclusion, | |
| # a push to beta that touches Server/** fires this workflow twice for the | |
| # same SHA, and GitHub auto-cancels the duplicate. | |
| branches-ignore: [beta, main] | |
| paths: | |
| - Server/** | |
| - tools/** | |
| - .github/workflows/python-tests.yml | |
| pull_request: | |
| branches: [main, beta] | |
| paths: | |
| - Server/** | |
| - tools/** | |
| - .github/workflows/python-tests.yml | |
| workflow_dispatch: {} | |
| workflow_call: | |
| inputs: | |
| ref: | |
| description: "Git ref to test (defaults to the triggering ref)." | |
| type: string | |
| required: false | |
| default: "" | |
| jobs: | |
| test: | |
| name: Run Python Tests | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| ref: ${{ inputs.ref || github.ref }} | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v4 | |
| with: | |
| version: "latest" | |
| - name: Set up Python | |
| run: uv python install 3.10 | |
| - name: Install dependencies | |
| run: | | |
| cd Server | |
| uv sync | |
| uv pip install -e ".[dev]" | |
| - name: Run tests with coverage | |
| run: | | |
| cd Server | |
| uv run pytest tests/ -v --tb=short --cov --cov-report=xml --cov-report=html --cov-report=term | |
| - name: Run local harness unit tests (hermetic, no Unity) | |
| run: | | |
| cd Server | |
| uv run python -m pytest "$GITHUB_WORKSPACE/tools/tests/" -v --tb=short | |
| - name: Upload coverage reports | |
| uses: codecov/codecov-action@v4 | |
| if: always() | |
| with: | |
| files: ./Server/coverage.xml | |
| flags: python | |
| name: python-coverage | |
| fail_ci_if_error: false | |
| - name: Upload test results | |
| uses: actions/upload-artifact@v4 | |
| if: always() | |
| with: | |
| name: pytest-results | |
| path: | | |
| Server/.pytest_cache/ | |
| Server/tests/ | |
| Server/coverage.xml | |
| Server/htmlcov/ |