mirror of
https://github.com/duckietm/Nitro-V3.git
synced 2026-06-19 23:16:21 +00:00
9d2e4a7324
22 -> 49 passing tests, 2 -> 3 test files. Targets are functions with zero external dependencies (no renderer SDK, no network, no DOM). They were picked because: - they're easy to break by accident in a refactor (rounding edge cases, zero-padding rules); - their behavior is documented by tests once and for all, including the surprising bit about LocalizeShortNumber rounding 950..999 into the "1K" bucket (kept as an explicit "documented quirk" assertion rather than fixed — the current behavior is what the rest of the app expects). New file: tests/api-utils.test.ts (27 cases) - ConvertSeconds: zero, 1m / 1h / 1d, mixed, single-digit padding (6). - LocalizeShortNumber: zero/NaN/null guard, sub-1000 stays as-is, K/M/B buckets, negative numbers, the 950..999 rounding quirk (7). - CloneObject: primitives, identity preservation, key fidelity (3). - GetWiredTimeLocale: even (whole sec), odd (half sec), zero (3). - WiredDateToString: zero-pad rules, two-digit values (2). - PrefixUtils.parsePrefixColors: empty inputs, mapping, color reuse (3). - PrefixUtils.getPrefixFontStyle: default empty id, known preset, unknown id (3). Verification - yarn test: 3 files / 49 cases / ~1.1s. - yarn eslint on tests/: 0 errors / 0 warnings. - All test targets are stable pure functions; the assertions double as documentation for callers.