name: test_backends

on:
    pull_request:
    push:
        branches:
            - master
        tags:
          - '*'

jobs:
  test_backends:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/setup-python@v5
        with:
          python-version: "3.12"
      - uses: actions/checkout@v4
      - name: Install cvxpy dependencies
        run: |
          pip install .
          pip install pytest hypothesis
      - name: Run tests for each non-default backend
        run : |
          export CVXPY_DEFAULT_CANON_BACKEND="SCIPY"
          python -c "from cvxpy.cvxcore.python.canonInterface import get_default_canon_backend; print(get_default_canon_backend())"
          python -c "from cvxpy.cvxcore.python.canonInterface import get_default_canon_backend; assert get_default_canon_backend() == 'SCIPY'"
          pytest

