diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 66a611c..f9528c3 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -7,9 +7,42 @@ on: branches: [main, master] jobs: - build: + test: + runs-on: ubuntu-latest + strategy: + matrix: + python-version: ["3.9", "3.10", "3.11"] + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -e . + + - name: Run unit tests + run: pytest tests/unit/ -v + + - name: Run integration tests + run: pytest tests/integration/ -v + + - name: Run tests with coverage + run: python -m pytest tests/ --cov=api_testgen + + - name: Upload coverage report + uses: codecov/codecov-action@v4 + with: + files: ./coverage.xml + fail_ci_if_error: false + + lint: runs-on: ubuntu-latest - continue-on-error: true steps: - uses: actions/checkout@v4 @@ -19,17 +52,11 @@ jobs: with: python-version: "3.11" - - name: Check Python version - run: python --version + - name: Install linting tools + run: pip install ruff mypy - - name: Check files - run: ls -la + - name: Run ruff + run: ruff check . - - name: Install package - run: | - pip install --upgrade pip - pip install -e . 2>&1 || echo "Install failed but continuing" - - - name: Verify installation - run: | - python -c "import api_testgen; print('OK')" 2>&1 || echo "Import failed" + - name: Run mypy + run: mypy api_testgen/ --ignore-missing-imports \ No newline at end of file