Serverpuls: Richtung, Vorzeichen und Stufen-Ton als Format-Helfer mit Test

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
ClaudeandClaude Sonnet 5.5 committed 2026-10-06 14:43:53 +00:00
1 parent 6adeac1642
commit bca99d4790
2 files changed
+31 -1

No files matched your search

+14 -1
View File
@@ -2,7 +2,7 @@ import test from 'node:test'
import assert from 'node:assert/strict'
import { loadModule } from './load.mjs'
const { formatBytes, formatDelta, ageLabel, usedPct, axisTimeKind, formatAxisTick, formatLegendTime } = await loadModule('src/lib/serverpulsFormat.js')
const { formatBytes, formatDelta, deltaDir, deltaSign, levelTone, ageLabel, usedPct, axisTimeKind, formatAxisTick, formatLegendTime } = await loadModule('src/lib/serverpulsFormat.js')
test('formatBytes: de-DE, Basis 1024', () => {
assert.equal(formatBytes(1288490189), '1,2 GB')
@@ -20,6 +20,19 @@ test('formatDelta', () => {
assert.equal(formatDelta(0).dir, 'flat')
})
test('deltaDir und deltaSign: Richtung und Vorzeichen der Kachel-Deltas', () => {
assert.deepEqual([deltaDir(0), deltaDir(5e-10), deltaDir(-5e-10)], ['flat', 'flat', 'flat'])
assert.equal(deltaDir(0.4), 'up')
assert.equal(deltaDir(-0.4), 'down')
assert.deepEqual([deltaSign('up'), deltaSign('down'), deltaSign('flat')], ['+', '−', ''])
})
test('levelTone: Badge-Ton je Stufe', () => {
assert.deepEqual(['ok', 'medium', 'critical'].map(levelTone), ['ok', 'warn', 'danger'])
assert.deepEqual([levelTone('low'), levelTone(undefined), levelTone('x')], ['muted', 'muted', 'muted'])
assert.deepEqual([levelTone('constructor'), levelTone('toString'), levelTone('__proto__')], ['muted', 'muted', 'muted'])
})
test('ageLabel: stale ab > 15 Min.', () => {
const now = 1_000_000_000_000
const a16 = ageLabel(now - 16 * 60000, now)