Skip to content

Commit 43edc4f

Browse files
authored
Merge pull request #367 from sir-gon/feature/coverage_html_test
[Github Actions] new test for HTML coverage report generation.
2 parents de04812 + 4567aaf commit 43edc4f

2 files changed

Lines changed: 53 additions & 1 deletion

File tree

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
# yamllint disable rule:line-length
2+
# This workflow runs make coverage/html and verifies that the coverage HTML report is generated.
3+
# yamllint enable rule:line-length
4+
5+
---
6+
name: Make Coverage HTML
7+
8+
on: # yamllint disable-line rule:truthy
9+
push:
10+
branches: ["main"]
11+
pull_request:
12+
branches: ["main"]
13+
workflow_dispatch:
14+
15+
jobs:
16+
make-coverage-html:
17+
name: "Run make coverage/html and verify coverage HTML"
18+
runs-on: windows-2025
19+
steps:
20+
- uses: actions/checkout@v4
21+
- name: Setup .NET
22+
uses: actions/setup-dotnet@v5
23+
with:
24+
dotnet-version: 10.0.x
25+
- name: Verify tooling
26+
run: |
27+
dotnet --version
28+
make --version
29+
- name: Run coverage HTML target
30+
run: make coverage/html
31+
- name: Verify coverage HTML artifact
32+
shell: bash
33+
run: |
34+
if [ ! -f coverage-report/index.html ]; then
35+
echo "Coverage HTML file not found: coverage-report/index.html"
36+
exit 1
37+
fi
38+
if [ ! -s coverage-report/index.html ]; then
39+
echo "Coverage HTML file is empty: coverage-report/index.html"
40+
exit 1
41+
fi
42+
- name: Upload coverage HTML artifact
43+
uses: actions/upload-artifact@v4
44+
with:
45+
name: coverage-report
46+
path: coverage-report

Makefile

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,13 @@ coverage: dependencies test
106106
cat coverage-report/Summary.txt
107107

108108
coverage/html: dependencies test
109-
open coverage-report/index.html
109+
@if [ "$$(uname)" = "Darwin" ]; then \
110+
open coverage-report/index.html; \
111+
elif [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "mingw32" ] || [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "mingw64" ] || [ "$$(uname | tr '[:upper:]' '[:lower:]')" = "cygwin" ]; then \
112+
cmd /c start coverage-report/index.html; \
113+
else \
114+
echo "Coverage HTML generated: coverage-report/index.html"; \
115+
fi
110116

111117
outdated:
112118

0 commit comments

Comments
 (0)