name: Tests on: push: branches: [main] pull_request: branches: [main] workflow_dispatch: permissions: contents: read jobs: test: name: pytest (Python ${{ matrix.python-version }}) runs-on: ubuntu-latest strategy: fail-fast: false matrix: python-version: ['3.10', '3.11', '3.12'] steps: - name: Check out repository uses: actions/checkout@v4 with: submodules: false # rgbmatrix submodule not needed in EMULATOR mode - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} cache: pip - name: Install dependencies run: | python -m pip install --upgrade pip pip install -r requirements.txt # Optional deps that some test modules import pip install scipy psutil Flask-Limiter - name: Run tests env: EMULATOR: "true" run: | pytest \ -m "not hardware and not slow" \ --tb=short