Skip to main content

max / makenotwork

556 B · 15 lines History Blame Raw
1 import { test } from 'node:test';
2 import assert from 'node:assert/strict';
3 import { formatSpeed, formatEta } from './s3.logic.ts';
4
5 test('formatSpeed switches from KB/s to MB/s at 1 MiB/s', () => {
6 assert.equal(formatSpeed(500 * 1024), '500 KB/s');
7 assert.equal(formatSpeed(2.4 * 1024 * 1024), '2.4 MB/s');
8 });
9
10 test('formatEta uses seconds under a minute, m+s above', () => {
11 assert.equal(formatEta(45), '45s');
12 assert.equal(formatEta(125), '3m 5s'); // ceil(125/60)=3, ceil(125%60=5)=5
13 assert.equal(formatEta(0.2), '1s'); // ceil rounds up
14 });
15