Calcoli di badge, obiettivi e percentuali spostati da route e componenti a src/lib

squadra: mediaPresenzeRosa, obiettiviCompletati, mediaProgressoObiettivi,
quantiAlGrado; scout: percentualePiu; utils: percentuale (usata da profilo,
RosaPresenze, CollezioneBadge). Test unitari per ciascuna.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
davideandClaude Sonnet 5.5 committed 2026-11-15 19:36:00 +01:00
1 parent 06c91149e7
commit 99265f6a1e
13 files changed
+106 -30

No files matched your search

+8 -2
View File
@@ -1,6 +1,6 @@
/** Check dell'helper di classi CSS: `bun test/unit/utils.test.ts`. */
/** Check dell'helper di utils (classi CSS e percentuale): `bun test/unit/utils.test.ts`. */
import assert from "node:assert/strict";
import { cn } from "@/lib/utils";
import { cn, percentuale } from "@/lib/utils";
// --- cn: unisce classi statiche e condizionali --------------------------------
assert.equal(cn("a", "b"), "a b");
@@ -16,4 +16,10 @@ assert.equal(
"classi non in conflitto convivono",
);
// --- percentuale -----------------------------------------------------------------
assert.equal(percentuale(1, 0), 0, "totale 0: nessuna divisione per zero");
assert.equal(percentuale(1, 3), 33);
assert.equal(percentuale(2, 3), 67);
assert.equal(percentuale(5, 5), 100);
console.log("utils: ok");