name: Tests on: push: branches: [main] pull_request: branches: [main] jobs: python-tests: name: Python Backend Tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install test dependencies run: | pip install --break-system-packages pytest httpx pytest-asyncio anyio fastapi pydantic pyyaml uvicorn requests - name: Run pytest run: python3 -m pytest backend/tests/ client/tests/ -v --tb=short frontend-tests: name: Frontend Tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-node@v4 with: node-version: 20 - name: Install dependencies run: npm ci - name: Run Vitest run: npx vitest run rust-tests: name: Rust Sidecar Tests runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Install Rust run: | curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable echo "$HOME/.cargo/bin" >> $GITHUB_PATH - name: Install Tauri system dependencies run: | sudo apt-get update sudo apt-get install -y libgtk-3-dev libwebkit2gtk-4.1-dev libappindicator3-dev librsvg2-dev patchelf - name: Run cargo test working-directory: src-tauri run: cargo test