aboutsummaryrefslogtreecommitdiff
path: root/src/lib/__tests__/format.test.ts
diff options
context:
space:
mode:
authorFuwn <[email protected]>2026-01-24 13:09:50 +0000
committerFuwn <[email protected]>2026-01-24 13:09:50 +0000
commit396acf3bbbe00a192cb0ea0a9ccf91b1d8d2850b (patch)
treeb9df4ca6a70db45cfffbae6fdd7252e20fb8e93c /src/lib/__tests__/format.test.ts
downloadumami-396acf3bbbe00a192cb0ea0a9ccf91b1d8d2850b.tar.xz
umami-396acf3bbbe00a192cb0ea0a9ccf91b1d8d2850b.zip
Initial commitHEADmain
Created from https://vercel.com/new
Diffstat (limited to 'src/lib/__tests__/format.test.ts')
-rw-r--r--src/lib/__tests__/format.test.ts38
1 files changed, 38 insertions, 0 deletions
diff --git a/src/lib/__tests__/format.test.ts b/src/lib/__tests__/format.test.ts
new file mode 100644
index 0000000..6e1b319
--- /dev/null
+++ b/src/lib/__tests__/format.test.ts
@@ -0,0 +1,38 @@
+import * as format from '../format';
+
+test('parseTime', () => {
+ expect(format.parseTime(86400 + 3600 + 60 + 1)).toEqual({
+ days: 1,
+ hours: 1,
+ minutes: 1,
+ seconds: 1,
+ ms: 0,
+ });
+});
+
+test('formatTime', () => {
+ expect(format.formatTime(3600 + 60 + 1)).toBe('1:01:01');
+});
+
+test('formatShortTime', () => {
+ expect(format.formatShortTime(3600 + 60 + 1)).toBe('1m1s');
+
+ expect(format.formatShortTime(3600 + 60 + 1, ['h', 'm', 's'])).toBe('1h1m1s');
+});
+
+test('formatNumber', () => {
+ expect(format.formatNumber('10.2')).toBe('10');
+ expect(format.formatNumber('10.5')).toBe('11');
+});
+
+test('formatLongNumber', () => {
+ expect(format.formatLongNumber(1200000)).toBe('1.2m');
+ expect(format.formatLongNumber(575000)).toBe('575k');
+ expect(format.formatLongNumber(10500)).toBe('10.5k');
+ expect(format.formatLongNumber(1200)).toBe('1.20k');
+});
+
+test('stringToColor', () => {
+ expect(format.stringToColor('hello')).toBe('#d218e9');
+ expect(format.stringToColor('goodbye')).toBe('#11e956');
+});