@@ -16,7 +16,7 @@ concurrency:
1616jobs :
1717 # ───────────────────────── Backend (.NET 10) ─────────────────────────
1818 backend :
19- name : backend (build + test )
19+ name : backend (build + coverage + format )
2020 runs-on : ubuntu-latest
2121 steps :
2222 - name : Checkout
@@ -33,16 +33,17 @@ jobs:
3333 - name : Build
3434 run : dotnet build DocAnalytics.slnx --no-restore --configuration Release
3535
36- - name : Test (correctness projects)
37- run : |
38- dotnet test DocAnalytics.Domain.Tests/DocAnalytics.Domain.Tests.csproj --no-build --configuration Release
39- dotnet test DocAnalytics.Data.Tests/DocAnalytics.Data.Tests.csproj --no-build --configuration Release
40- dotnet test DocAnalytics.Service.Tests/DocAnalytics.Service.Tests.csproj --no-build --configuration Release
41- dotnet test DocAnalytics.Api.Tests/DocAnalytics.Api.Tests.csproj --no-build --configuration Release
36+ - name : Format check (dotnet format)
37+ run : dotnet format DocAnalytics.slnx --verify-no-changes
38+
39+ - name : Test + coverage gate (per layer)
40+ shell : bash
41+ run : bash scripts/coverage-gate.sh
42+
4243
4344 # ──────────────────────── Frontend (Angular 22) ────────────────────────
4445 frontend :
45- name : frontend (build + test)
46+ name : frontend (build + test + format )
4647 runs-on : ubuntu-latest
4748 defaults :
4849 run :
@@ -61,10 +62,13 @@ jobs:
6162 - name : Install (clean)
6263 run : npm ci
6364
65+ - name : Prettier format check
66+ run : npm run format:check
67+
6468 - name : Build
6569 run : npm run build
6670
67- - name : Test (Vitest, single run)
71+ - name : Test (Vitest, single run + coverage thresholds )
6872 run : npx ng test --watch=false
6973
7074 # ──────────────────────── DevSecOps (scans) ────────────────────────
0 commit comments