File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 7373 - name : B1) validate-pyproject (must be in pyproject.toml dependencies)
7474 run : uv run validate-pyproject pyproject.toml
7575
76- # ============================================================
77- # === COVERAGE AND TESTS: Verify functionality ===
78- # ============================================================
79-
80- - name : C1) Run pytest with coverage
81- run : |
82- if [ -d "tests" ] && [ -n "$(find tests -type f \( -name 'test_*.py' -o -name '*_test.py' \) -print -quit)" ]; then
83- uv run pytest --verbose --cov=src --cov-report=term-missing --cov-report=xml
84- else
85- echo "## No Tests Found" >> "$GITHUB_STEP_SUMMARY"
86- echo "Tests directory missing or empty. CI continues." >> "$GITHUB_STEP_SUMMARY"
87- fi
88-
89- - name : C2) Upload test coverage to GitHub Summary
90- if : always()
91- run : |
92- echo "## Test Coverage Report" >> "$GITHUB_STEP_SUMMARY"
93- if [ -f ".coverage" ]; then
94- echo '```' >> "$GITHUB_STEP_SUMMARY"
95- uv run coverage report >> "$GITHUB_STEP_SUMMARY"
96- echo '```' >> "$GITHUB_STEP_SUMMARY"
97- else
98- echo "No coverage data available." >> "$GITHUB_STEP_SUMMARY"
99- fi
100-
101- - name : C3) Upload coverage artifact
102- if : always() && hashFiles('coverage.xml') != ''
103- uses : actions/upload-artifact@v7
104- with :
105- name : coverage-report
106- path : coverage.xml
107- retention-days : 30
108-
10976 # ============================================================
11077 # === DEPLOY: Build only, don't deploy yet ===
11178 # ============================================================
You can’t perform that action at this time.
0 commit comments