Spaces:
Runtime error
Runtime error
Raymond Weitekamp
feat: add HF authentication setup and testing infrastructure - Add save_hf_storage_state.py for auth state management - Add check_hf_login.py for login verification - Update test_local.sh with Playwright setup - Add .cursor rules for test-first development - Update requirements.txt with new dependencies
fcd4d8a
| # Exit on error | |
| set -e | |
| # Kill any existing processes using port 7862 | |
| echo "Cleaning up port 7862..." | |
| lsof -ti:7862 | xargs kill -9 2>/dev/null || true | |
| # Check if uv is installed, if not install it | |
| if ! command -v uv &> /dev/null; then | |
| echo "Installing uv package installer..." | |
| curl -LsSf https://astral.sh/uv/install.sh | sh | |
| fi | |
| # Create virtual environment if it doesn't exist | |
| if [ ! -d "venv" ]; then | |
| echo "Creating virtual environment..." | |
| python -m venv venv | |
| fi | |
| # Activate virtual environment | |
| echo "Activating virtual environment..." | |
| source venv/bin/activate | |
| # Install dependencies using uv | |
| echo "Installing dependencies with uv..." | |
| uv pip install -r requirements.txt | |
| # Install Playwright browsers | |
| echo "Installing Playwright browsers..." | |
| playwright install chromium | |
| # Run unit tests | |
| echo "Running unit tests..." | |
| python -m pytest test_app.py -v | |
| if [ $? -eq 0 ]; then | |
| echo "Unit tests passed! Starting Gradio app..." | |
| # Start Gradio app in background | |
| python app.py & | |
| GRADIO_PID=$! | |
| # Wait for server to start | |
| echo "Waiting for Gradio server to start..." | |
| sleep 3 | |
| # Run e2e tests | |
| echo "Running e2e tests..." | |
| python -m pytest test_e2e.py -v | |
| E2E_STATUS=$? | |
| # Kill Gradio server | |
| kill $GRADIO_PID | |
| if [ $E2E_STATUS -eq 0 ]; then | |
| echo "All tests passed!" | |
| exit 0 | |
| else | |
| echo "E2E tests failed! Please fix the issues before running the app." | |
| exit 1 | |
| fi | |
| else | |
| echo "Unit tests failed! Please fix the issues before running e2e tests." | |
| exit 1 | |
| fi | |
| # Deactivate virtual environment | |
| deactivate |