Files
peardata/test/format.test.js
T
Raven Scott c3b4240e47
CI / test (push) Successful in 1m2s
Release rolling / release (push) Has been cancelled
Usage — total data dir, Corestore, memory rings, warm HyperDB sample
Hot memory — 15m → 24h (or custom points)
Warm memory — downsampled ring + samples-per-bucket
Disk history — auto-rotate by age (1 day → 1 year, forever, or custom days)
Soft disk budget + max warm points
Auto prune on a configurable hour interval
Dry-run prune / Prune now / Save to agent (admin role)
2026-07-19 12:55:13 -04:00

31 lines
1.0 KiB
JavaScript

import test from 'brittle'
import { formatMib, formatKilobitsPerSec, formatBytes } from '../shared/format.js'
test('formatMib scales through binary units', async (t) => {
t.is(formatMib(null), '—')
t.is(formatMib(NaN), '—')
t.is(formatMib(0), '0 B')
t.is(formatMib(0.5), '512 KiB')
t.is(formatMib(256), '256 MiB')
t.is(formatMib(1024), '1 GiB')
t.is(formatMib(1536), '1.5 GiB')
t.is(formatMib(1024 * 1024), '1 TiB')
})
test('formatKilobitsPerSec scales through SI bit rates', async (t) => {
t.is(formatKilobitsPerSec(null), '—')
t.is(formatKilobitsPerSec(0), '0 b/s')
t.is(formatKilobitsPerSec(0.5), '500 b/s')
t.is(formatKilobitsPerSec(12.5), '12.5 kb/s')
t.is(formatKilobitsPerSec(1500), '1.5 Mb/s')
t.is(formatKilobitsPerSec(2_500_000), '2.5 Gb/s')
t.is(formatKilobitsPerSec(3_000_000_000), '3 Tb/s')
})
test('formatBytes scales binary units', async (t) => {
t.is(formatBytes(null), '—')
t.is(formatBytes(0), '0 B')
t.is(formatBytes(512), '512 B')
t.is(formatBytes(2048), '2 KiB')
})