This directory contains GitHub Actions workflows for automated testing and quality checks.
Comprehensive testing pipeline that runs on every push and pull request to main branch.
- Backend Tests: Unit tests across Python 3.9-3.11
- Frontend Tests: Linting, type checking, and build verification
- Security Scan: Dependency vulnerability scanning
- Integration Tests: Full API testing with SQLite and PostgreSQL
Essential checks for pull requests - faster and more reliable.
- Backend Checks: Syntax validation, import testing, database creation
- Frontend Checks: Linting and build verification
- Security Scan: Basic security vulnerability checks
- Integration Test: API endpoint verification
tests/
├── __init__.py # Test package
├── test_main.py # Backend unit tests
└── integration/
├── __init__.py # Integration test package
└── test_api_integration.py # Full API integration tests
The frontend uses Vitest for testing:
cd frontend
npm run test # Run tests
npm run test:coverage # Run with coverage
npm run type-check # TypeScript validationBackend uses pytest:
pytest tests/ # Run all tests
pytest tests/test_main.py # Run specific test file
pytest --cov=. --cov-report=html # Run with coverage# Backend
pip install pytest pytest-asyncio pytest-cov httpx requests
# Frontend
cd frontend && npm install# Test backend syntax and imports
python -m py_compile main.py
python -c "from main import app; print('✓ Backend OK')"
# Test frontend build
cd frontend && npm run build- Python: Uses
safetyandbandit - Node.js: Uses
npm audit - Dependency scanning: Automated vulnerability detection
- TypeScript: ESLint, TypeScript compiler
- Python: Manual code quality tools available (Black, isort, flake8) but not enforced in CI
DATABASE_URL: Set to test databaseGEMINI_API_KEY: Set to test key for CI- Coverage reports uploaded to Codecov (optional)
Check the Actions tab in GitHub to see the status of all workflows. The PR checks workflow is designed to be fast and reliable, while the full CI/CD pipeline provides comprehensive testing.