Skip to content

Commit e463db9

Browse files
committed
Deploy coverage report for e2b27b9 e2b27b9
1 parent a139913 commit e463db9

File tree

3 files changed

+280
-6785
lines changed

3 files changed

+280
-6785
lines changed

index.html

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
}
2626
.report-link {
2727
background: #0366d6; color: white; padding: 10px 20px;
28-
text-decoration: none; border-radius: 6px; display: inline-block;
28+
text-decoration: none; border-radius: 6px; display: inline-block; margin-right: 10px;
2929
}
3030
.report-link:hover {
3131
background: #0256cc;
@@ -48,11 +48,19 @@ <h1>Rattlesnake Code Quality Reports Summary</h1>
4848
</div>
4949
</div>
5050

51+
<div class="report-card">
52+
<h3>📊 Coverage Report</h3>
53+
<p>Test coverage analysis showing how much of the codebase is covered by tests.</p>
54+
<p><strong>Latest Coverage:</strong> 0.0%</p>
55+
<p><strong>Last Updated:</strong> $(date)</p>
56+
<a href="./reports/coverage/" class="report-link">Coverage Report</a>
57+
<a href="./reports/coverage/htmlcov/" class="report-link">Detailed HTML Coverage</a>
58+
</div>
59+
5160
<div class="report-card">
5261
<h3>📊 Pylint Report</h3>
5362
<p>Static code analysis results showing code quality metrics, style compliance, and potential issues.</p>
54-
<p><strong>Latest Score:</strong> 5.66/10</p>
55-
<p><strong>Last Updated:</strong> $(date)</p>
63+
<p><strong>Last Updated:</strong> Check latest workflow run</p>
5664
<a href="./reports/pylint/" class="report-link">Pylint Report</a>
5765
</div>
5866

reports/coverage/index.html

Lines changed: 269 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,269 @@
1+
<!DOCTYPE html>
2+
<html lang="en">
3+
<head>
4+
<meta charset="UTF-8">
5+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6+
<title>Coverage Report - Rattlesnake</title>
7+
<style>
8+
body {
9+
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
10+
margin: 0; padding: 20px; background: #f6f8fa; line-height: 1.6;
11+
}
12+
.container {
13+
max-width: 1200px; margin: 0 auto;
14+
}
15+
.header {
16+
background: white; padding: 30px; border-radius: 8px;
17+
box-shadow: 0 1px 3px rgba(0,0,0,0.1); margin-bottom: 20px;
18+
}
19+
.coverage {
20+
font-size: 2.5em; font-weight: bold; color: #dc3545;
21+
}
22+
.metadata {
23+
color: #6a737d; font-size: 0.9em; margin-top: 10px;
24+
}
25+
.nav {
26+
background: white; padding: 20px; border-radius: 8px;
27+
box-shadow: 0 1px 3px rgba(0,0,0,0.1); margin-bottom: 20px;
28+
}
29+
.nav a {
30+
background: #0366d6; color: white; padding: 10px 20px;
31+
text-decoration: none; border-radius: 6px; margin-right: 10px;
32+
display: inline-block; margin-bottom: 5px;
33+
}
34+
.nav a:hover {
35+
background: #0256cc;
36+
}
37+
.section {
38+
background: white; padding: 25px; border-radius: 8px;
39+
box-shadow: 0 1px 3px rgba(0,0,0,0.1); margin-bottom: 20px;
40+
}
41+
.tests-list {
42+
max-height: 500px; overflow-y: auto;
43+
border: 1px solid #e1e4e8; border-radius: 6px;
44+
}
45+
.test-result {
46+
padding: 10px; border-bottom: 1px solid #e1e4e8;
47+
font-family: 'SFMono-Regular', 'Consolas', monospace;
48+
font-size: 0.9em;
49+
}
50+
.test-result:last-child {
51+
border-bottom: none;
52+
}
53+
.test-result.passed { background: #e6ffed; }
54+
.test-result.failed { background: #ffeef0; }
55+
.test-result.skipped { background: #fff8e1; }
56+
.test-result.error { background: #ffeaa7; }
57+
.summary {
58+
background: #f6f8fa; padding: 20px; border-radius: 6px;
59+
border-left: 4px solid #0366d6; font-family: monospace;
60+
white-space: pre-wrap;
61+
}
62+
.stats {
63+
display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
64+
gap: 15px; margin-top: 20px;
65+
}
66+
.stat-card {
67+
background: #f6f8fa; padding: 15px; border-radius: 6px; text-align: center;
68+
}
69+
.stat-number {
70+
font-size: 1.8em; font-weight: bold; color: #0366d6;
71+
}
72+
.coverage-details {
73+
display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
74+
gap: 15px; margin-top: 20px;
75+
}
76+
.coverage-card {
77+
background: #f6f8fa; padding: 20px; border-radius: 6px;
78+
}
79+
.coverage-card h4 {
80+
margin-top: 0; color: #0366d6;
81+
}
82+
.progress-bar {
83+
background: #e1e4e8; height: 20px; border-radius: 10px; overflow: hidden;
84+
}
85+
.progress-fill {
86+
height: 100%; background: #dc3545;
87+
transition: width 0.3s ease;
88+
}
89+
.missing-coverage {
90+
max-height: 400px; overflow-y: auto;
91+
border: 1px solid #e1e4e8; border-radius: 6px;
92+
}
93+
.missing-file {
94+
padding: 15px; border-bottom: 1px solid #e1e4e8;
95+
}
96+
.missing-file:last-child {
97+
border-bottom: none;
98+
}
99+
.missing-file h4 {
100+
margin: 0 0 10px 0; color: #0366d6;
101+
font-family: 'SFMono-Regular', 'Consolas', monospace;
102+
}
103+
.missing-lines {
104+
background: #ffeef0; padding: 10px; border-radius: 4px;
105+
border-left: 4px solid #dc3545; font-family: monospace;
106+
font-size: 0.9em;
107+
}
108+
</style>
109+
</head>
110+
<body>
111+
<div class="container">
112+
<div class="header">
113+
<h1>Rattlesnake Coverage Report</h1>
114+
<div class="coverage">0.0%</div>
115+
<div class="metadata">
116+
<div><strong>Generated:</strong> 2025-07-30 19:54:25 UTC (2025-07-30 15:54:25 EST / 2025-07-30 13:54:25 MST)</div>
117+
<div><strong>Run ID:</strong> 16632361205</div>
118+
<div><strong>Branch:</strong> dev</div>
119+
<div><strong>Commit:</strong> e2b27b93</div>
120+
</div>
121+
</div>
122+
123+
<div class="nav">
124+
<a href="#summary">Summary</a>
125+
<a href="#tests">Test Results (0)</a>
126+
<a href="#coverage">Coverage Details</a>
127+
<a href="#missing">Missing Coverage</a>
128+
<a href="#full-report">Full Report</a>
129+
<a href="https://github.com/sandialabs/rattlesnake-vibration-controller/actions/runs/16632361205">View Workflow Run</a>
130+
<a href="https://github.com/sandialabs/rattlesnake-vibration-controller">Repository</a>
131+
</div>
132+
133+
<div class="section">
134+
<h2 id="summary">📊 Test Summary</h2>
135+
<div class="stats">
136+
<div class="stat-card">
137+
<div class="stat-number">0</div>
138+
<div>Total Tests</div>
139+
</div>
140+
<div class="stat-card">
141+
<div class="stat-number" style="color: #28a745;">0</div>
142+
<div>Passed</div>
143+
</div>
144+
<div class="stat-card">
145+
<div class="stat-number" style="color: #dc3545;">0</div>
146+
<div>Failed</div>
147+
</div>
148+
<div class="stat-card">
149+
<div class="stat-number" style="color: #ffc107;">0</div>
150+
<div>Skipped</div>
151+
</div>
152+
</div>
153+
</div>
154+
155+
<div class="section">
156+
<h2 id="coverage">📈 Coverage Details</h2>
157+
<div class="coverage-details">
158+
<div class="coverage-card">
159+
<h4>Line Coverage</h4>
160+
<div class="progress-bar">
161+
<div class="progress-fill" style="width: 0.0%;"></div>
162+
</div>
163+
<p><strong>0.0%</strong> (0/10368 lines)</p>
164+
</div>
165+
<div class="coverage-card">
166+
<h4>Branch Coverage</h4>
167+
<div class="progress-bar">
168+
<div class="progress-fill" style="width: 0.0%;"></div>
169+
</div>
170+
<p><strong>0.0%</strong> (0/0 branches)</p>
171+
</div>
172+
</div>
173+
</div>
174+
175+
176+
<div class="section">
177+
<h2 id="missing">🚫 Missing Coverage</h2>
178+
<div class="missing-coverage">
179+
<div class="coverage-card">
180+
<h4>Line Coverage</h4>
181+
<div class="progress-bar">
182+
<div class="progress-fill" style="width: 0.0%;"></div>
183+
</div>
184+
<p><strong>0.0%</strong> (0/10368 lines)</p>
185+
</div>
186+
<div class="coverage-card">
187+
<h4>Branch Coverage</h4>
188+
<div class="progress-bar">
189+
<div class="progress-fill" style="width: 0.0%;"></div>
190+
</div>
191+
<p><strong>0.0%</strong> (0/0 branches)</p>
192+
</div>
193+
</div>
194+
</div>
195+
196+
197+
<div class="section">
198+
<h2 id="tests">🧪 Test Results Detail</h2>
199+
<p>No test results found.</p>
200+
</div>
201+
202+
<div class="section">
203+
<h2 id="full-report">📋 Full Report</h2>
204+
<details>
205+
<summary>Click to view complete pytest output</summary>
206+
<pre style="background: #f6f8fa; padding: 20px; border-radius: 6px; overflow-x: auto;">============================= test session starts ==============================
207+
platform linux -- Python 3.11.13, pytest-8.4.1, pluggy-1.6.0
208+
PyQt5 5.15.11 -- Qt runtime 5.15.17 -- Qt compiled 5.15.14
209+
rootdir: /home/runner/work/rattlesnake-vibration-controller/rattlesnake-vibration-controller
210+
configfile: pyproject.toml
211+
plugins: cov-6.2.1, qt-4.4.0
212+
collected 1 item
213+
214+
tests/test_hello.py . [100%]
215+
216+
================================ tests coverage ================================
217+
_______________ coverage: platform linux, python 3.11.13-final-0 _______________
218+
219+
Name Stmts Miss Cover Missing
220+
---------------------------------------------------------------------------------------------------
221+
src/rattlesnake/__init__.py 0 0 100%
222+
src/rattlesnake/components/__init__.py 9 9 0% 28-41
223+
src/rattlesnake/components/abstract_environment.py 151 151 0% 25-619
224+
src/rattlesnake/components/abstract_hardware.py 44 44 0% 24-157
225+
src/rattlesnake/components/abstract_message_process.py 53 53 0% 25-180
226+
src/rattlesnake/components/abstract_sysid_data_analysis.py 76 76 0% 26-180
227+
src/rattlesnake/components/abstract_sysid_environment.py 788 788 0% 25-1711
228+
src/rattlesnake/components/acquisition.py 226 226 0% 24-434
229+
src/rattlesnake/components/data_collector.py 306 306 0% 25-537
230+
src/rattlesnake/components/data_physics_hardware.py 125 125 0% 25-359
231+
src/rattlesnake/components/data_physics_interface.py 236 236 0% 25-393
232+
src/rattlesnake/components/environments.py 52 52 0% 25-111
233+
src/rattlesnake/components/exodus_modal_solution_hardware.py 201 201 0% 25-638
234+
src/rattlesnake/components/lanxi_hardware_multiprocessing.py 570 570 0% 24-953
235+
src/rattlesnake/components/lanxi_stream.py 235 235 0% 3-295
236+
src/rattlesnake/components/modal_environment.py 1145 1145 0% 25-2061
237+
src/rattlesnake/components/nidaqmx_hardware_multitask.py 184 184 0% 25-476
238+
src/rattlesnake/components/output.py 163 163 0% 25-362
239+
src/rattlesnake/components/random_vibration_sys_id_data_analysis.py 125 125 0% 26-331
240+
src/rattlesnake/components/random_vibration_sys_id_environment.py 1075 1075 0% 30-2023
241+
src/rattlesnake/components/random_vibration_sys_id_utilities.py 41 41 0% 24-87
242+
src/rattlesnake/components/sdynpy_system_virtual_hardware.py 141 141 0% 24-435
243+
src/rattlesnake/components/signal_generation.py 279 279 0% 24-526
244+
src/rattlesnake/components/signal_generation_process.py 158 158 0% 24-386
245+
src/rattlesnake/components/skeleton_sys_id_environment.py 114 114 0% 25-297
246+
src/rattlesnake/components/spectral_processing.py 279 279 0% 25-588
247+
src/rattlesnake/components/state_space_virtual_hardware.py 78 78 0% 25-307
248+
src/rattlesnake/components/streaming.py 77 77 0% 25-212
249+
src/rattlesnake/components/time_environment.py 332 332 0% 27-903
250+
src/rattlesnake/components/transient_sys_id_environment.py 927 927 0% 25-1562
251+
src/rattlesnake/components/ui_utilities.py 894 894 0% 24-1424
252+
src/rattlesnake/components/user_interface.py 891 891 0% 25-1374
253+
src/rattlesnake/components/utilities.py 306 306 0% 24-818
254+
src/rattlesnake/hello.py 2 2 0% 4-6
255+
src/rattlesnake/rattlesnake.py 85 85 0% 22-217
256+
---------------------------------------------------------------------------------------------------
257+
TOTAL 10368 10368 0%
258+
Coverage HTML written to dir htmlcov
259+
Coverage XML written to file coverage.xml
260+
============================== 1 passed in 4.90s ===============================
261+
</pre>
262+
</details>
263+
</div>
264+
</div>
265+
<footer style="text-align: center; margin: 40px 0; color: #6a737d;">
266+
<p>Generated by GitHub Actions • <a href="https://github.com/sandialabs/rattlesnake-vibration-controller">Rattlesnake Project</a></p>
267+
</footer>
268+
</body>
269+
</html>

0 commit comments

Comments
 (0)