♻️ refactor: simplify coverage measurement using separate output files (KISS principle)

This commit is contained in:
2026-04-08 13:13:36 +02:00
parent 5f93743c54
commit 32b11b1f97

View File

@@ -194,13 +194,13 @@ jobs:
export DLC_DATABASE_PASSWORD=postgres export DLC_DATABASE_PASSWORD=postgres
export DLC_DATABASE_NAME=dance_lessons_coach_bdd_test export DLC_DATABASE_NAME=dance_lessons_coach_bdd_test
export DLC_DATABASE_SSL_MODE=disable export DLC_DATABASE_SSL_MODE=disable
./scripts/run-bdd-tests.sh
# Run BDD tests and capture output # Generate BDD coverage report
test_output=$(./scripts/run-bdd-tests.sh 2>&1) go tool cover -func=coverage.out > bdd_coverage.txt
echo "$test_output"
# Extract BDD coverage percentage from the output # Extract BDD coverage percentage
BDD_COVERAGE=$(echo "$test_output" | grep "coverage:" | grep -oP '\d+\.\d+' | head -1) BDD_COVERAGE=$(grep "total:" bdd_coverage.txt | grep -oP '\d+\.\d+' | head -1)
echo "BDD Coverage: ${BDD_COVERAGE}%" echo "BDD Coverage: ${BDD_COVERAGE}%"
# Update BDD coverage badge # Update BDD coverage badge
@@ -212,10 +212,13 @@ jobs:
run: | run: |
echo "Running unit tests with PostgreSQL service..." echo "Running unit tests with PostgreSQL service..."
# Run unit tests excluding BDD tests (already run above) # Run unit tests excluding BDD tests (already run above)
go test ./pkg/... ./cmd/... -coverprofile=coverage.out -v && go tool cover -func=coverage.out > coverage.txt go test ./pkg/... ./cmd/... -coverprofile=unit_coverage.out -v
# Generate unit coverage report
go tool cover -func=unit_coverage.out > unit_coverage.txt
# Extract unit test coverage percentage # Extract unit test coverage percentage
UNIT_COVERAGE=$(grep "total:" coverage.txt | grep -oP '\d+\.\d+' | head -1) UNIT_COVERAGE=$(grep "total:" unit_coverage.txt | grep -oP '\d+\.\d+' | head -1)
echo "Unit Coverage: ${UNIT_COVERAGE}%" echo "Unit Coverage: ${UNIT_COVERAGE}%"
# Update unit test coverage badge # Update unit test coverage badge