Skip to content

Standardize project workflows and testing #4

Standardize project workflows and testing

Standardize project workflows and testing #4

Workflow file for this run

name: PR Validation
permissions:
contents: read
pull-requests: write
on:
pull_request:
types: [opened, synchronize, reopened]
jobs:
test-and-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.13'
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pytest ruff black
pip install -e . || pip install .
- name: Format check with black
run: |
black --check . || echo "Formatting issues found (non-blocking)"
- name: Lint with ruff
run: |
ruff check . || echo "Linting issues found (non-blocking)"
- name: Run tests
run: |
pytest tests/ -v --tb=short
documentation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Check required files
run: |
required_files="README.md LICENSE AUTHORS.md CONTRIBUTING.md pyproject.toml"
for file in $required_files; do
if [ -f "$file" ]; then
echo "✓ $file exists"
else
echo "✗ $file is missing"
exit 1
fi
done