// The Lucia project. // Copyright 2026-2026 DSP, inc. All rights reserved. // Authors: // imacat.yang@dsp.im (imacat), 2026/03/05 import { describe, it, expect } from 'vitest'; import shortScaleNumber from '@/module/shortScaleNumber.js'; describe('shortScaleNumber', () => { it('returns small numbers without abbreviation', () => { expect(shortScaleNumber(1).trim()).toBe('1'); expect(shortScaleNumber(999).trim()).toBe('999'); }); it('abbreviates thousands as k', () => { expect(shortScaleNumber(1000).trim()).toBe('1k'); expect(shortScaleNumber(1500).trim()).toBe('1.5k'); }); it('abbreviates millions as m', () => { expect(shortScaleNumber(1000000).trim()).toBe('1m'); }); it('abbreviates billions as b', () => { expect(shortScaleNumber(1000000000).trim()).toBe('1b'); }); it('abbreviates trillions as t', () => { expect(shortScaleNumber(1000000000000).trim()) .toBe('1t'); }); it('rounds up using Math.ceil', () => { // 1234 -> 1.234k -> ceil(12.34)/10 = 1.3k expect(shortScaleNumber(1234).trim()).toBe('1.3k'); }); it('handles zero', () => { expect(shortScaleNumber(0).trim()).toBe('0'); }); });