mirror of
https://github.com/maziggy/bambuddy.git
synced 2026-09-30 19:21:33 +02:00
Backend: - pytest configuration with async support and coverage - Unit tests for notification service (23 tests) - Unit tests for smart plug manager (12 tests) - Unit tests for archive service (16 tests) - Integration tests for API endpoints - Fix: notifications now send immediately (digest is summary only) Frontend: - Vitest configuration with jsdom and coverage - MSW for API mocking - Component tests for Toggle, Button, Card, ConfirmModal (77 tests) - Test utilities with custom render wrapper CI/CD: - GitHub Actions workflow for automated testing - Backend lint, unit tests, integration tests - Frontend lint, type-check, unit tests, build
236 lines
9.5 KiB
HTML
236 lines
9.5 KiB
HTML
|
|
<!doctype html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<title>Code coverage report for All files</title>
|
|
<meta charset="utf-8" />
|
|
<link rel="stylesheet" href="prettify.css" />
|
|
<link rel="stylesheet" href="base.css" />
|
|
<link rel="shortcut icon" type="image/x-icon" href="favicon.png" />
|
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
<style type='text/css'>
|
|
.coverage-summary .sorter {
|
|
background-image: url(sort-arrow-sprite.png);
|
|
}
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
<div class='wrapper'>
|
|
<div class='pad1'>
|
|
<h1>All files</h1>
|
|
<div class='clearfix'>
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">2.88% </span>
|
|
<span class="quiet">Statements</span>
|
|
<span class='fraction'>594/20569</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">41.73% </span>
|
|
<span class="quiet">Branches</span>
|
|
<span class='fraction'>53/127</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">7.06% </span>
|
|
<span class="quiet">Functions</span>
|
|
<span class='fraction'>19/269</span>
|
|
</div>
|
|
|
|
|
|
<div class='fl pad1y space-right2'>
|
|
<span class="strong">2.88% </span>
|
|
<span class="quiet">Lines</span>
|
|
<span class='fraction'>594/20569</span>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
<p class="quiet">
|
|
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
</p>
|
|
<template id="filterTemplate">
|
|
<div class="quiet">
|
|
Filter:
|
|
<input type="search" id="fileSearch">
|
|
</div>
|
|
</template>
|
|
</div>
|
|
<div class='status-line low'></div>
|
|
<div class="pad1">
|
|
<table class="coverage-summary">
|
|
<thead>
|
|
<tr>
|
|
<th data-col="file" data-fmt="html" data-html="true" class="file">File</th>
|
|
<th data-col="pic" data-type="number" data-fmt="html" data-html="true" class="pic"></th>
|
|
<th data-col="statements" data-type="number" data-fmt="pct" class="pct">Statements</th>
|
|
<th data-col="statements_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="branches" data-type="number" data-fmt="pct" class="pct">Branches</th>
|
|
<th data-col="branches_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="functions" data-type="number" data-fmt="pct" class="pct">Functions</th>
|
|
<th data-col="functions_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
<th data-col="lines" data-type="number" data-fmt="pct" class="pct">Lines</th>
|
|
<th data-col="lines_raw" data-type="number" data-fmt="html" class="abs"></th>
|
|
</tr>
|
|
</thead>
|
|
<tbody><tr>
|
|
<td class="file low" data-value="src"><a href="src/index.html">src</a></td>
|
|
<td data-value="0" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="56" class="abs low">0/56</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="56" class="abs low">0/56</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/api"><a href="src/api/index.html">src/api</a></td>
|
|
<td data-value="27.54" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 27%"></div><div class="cover-empty" style="width: 73%"></div></div>
|
|
</td>
|
|
<td data-value="27.54" class="pct low">27.54%</td>
|
|
<td data-value="679" class="abs low">187/679</td>
|
|
<td data-value="75" class="pct medium">75%</td>
|
|
<td data-value="4" class="abs medium">3/4</td>
|
|
<td data-value="1.76" class="pct low">1.76%</td>
|
|
<td data-value="170" class="abs low">3/170</td>
|
|
<td data-value="27.54" class="pct low">27.54%</td>
|
|
<td data-value="679" class="abs low">187/679</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/components"><a href="src/components/index.html">src/components</a></td>
|
|
<td data-value="3.65" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 3%"></div><div class="cover-empty" style="width: 97%"></div></div>
|
|
</td>
|
|
<td data-value="3.65" class="pct low">3.65%</td>
|
|
<td data-value="9626" class="abs low">352/9626</td>
|
|
<td data-value="46" class="pct low">46%</td>
|
|
<td data-value="100" class="abs low">46/100</td>
|
|
<td data-value="18.66" class="pct low">18.66%</td>
|
|
<td data-value="75" class="abs low">14/75</td>
|
|
<td data-value="3.65" class="pct low">3.65%</td>
|
|
<td data-value="9626" class="abs low">352/9626</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/components/icons"><a href="src/components/icons/index.html">src/components/icons</a></td>
|
|
<td data-value="0" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="44" class="abs low">0/44</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="44" class="abs low">0/44</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file medium" data-value="src/contexts"><a href="src/contexts/index.html">src/contexts</a></td>
|
|
<td data-value="60.22" class="pic medium">
|
|
<div class="chart"><div class="cover-fill" style="width: 60%"></div><div class="cover-empty" style="width: 40%"></div></div>
|
|
</td>
|
|
<td data-value="60.22" class="pct medium">60.22%</td>
|
|
<td data-value="88" class="abs medium">53/88</td>
|
|
<td data-value="66.66" class="pct medium">66.66%</td>
|
|
<td data-value="6" class="abs medium">4/6</td>
|
|
<td data-value="33.33" class="pct low">33.33%</td>
|
|
<td data-value="6" class="abs low">2/6</td>
|
|
<td data-value="60.22" class="pct medium">60.22%</td>
|
|
<td data-value="88" class="abs medium">53/88</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/hooks"><a href="src/hooks/index.html">src/hooks</a></td>
|
|
<td data-value="1.33" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 1%"></div><div class="cover-empty" style="width: 99%"></div></div>
|
|
</td>
|
|
<td data-value="1.33" class="pct low">1.33%</td>
|
|
<td data-value="150" class="abs low">2/150</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="2" class="abs low">0/2</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="3" class="abs low">0/3</td>
|
|
<td data-value="1.33" class="pct low">1.33%</td>
|
|
<td data-value="150" class="abs low">2/150</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/i18n"><a href="src/i18n/index.html">src/i18n</a></td>
|
|
<td data-value="0" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="29" class="abs low">0/29</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="1" class="abs low">0/1</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="29" class="abs low">0/29</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/i18n/locales"><a href="src/i18n/locales/index.html">src/i18n/locales</a></td>
|
|
<td data-value="0" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="666" class="abs low">0/666</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="2" class="abs low">0/2</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="2" class="abs low">0/2</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="666" class="abs low">0/666</td>
|
|
</tr>
|
|
|
|
<tr>
|
|
<td class="file low" data-value="src/pages"><a href="src/pages/index.html">src/pages</a></td>
|
|
<td data-value="0" class="pic low">
|
|
<div class="chart"><div class="cover-fill" style="width: 0%"></div><div class="cover-empty" style="width: 100%"></div></div>
|
|
</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="9231" class="abs low">0/9231</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="10" class="abs low">0/10</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="10" class="abs low">0/10</td>
|
|
<td data-value="0" class="pct low">0%</td>
|
|
<td data-value="9231" class="abs low">0/9231</td>
|
|
</tr>
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class='push'></div><!-- for sticky footer -->
|
|
</div><!-- /wrapper -->
|
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
Code coverage generated by
|
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
at 2025-12-11T08:38:30.022Z
|
|
</div>
|
|
<script src="prettify.js"></script>
|
|
<script>
|
|
window.onload = function () {
|
|
prettyPrint();
|
|
};
|
|
</script>
|
|
<script src="sorter.js"></script>
|
|
<script src="block-navigation.js"></script>
|
|
</body>
|
|
</html>
|
|
|