import assert from 'node:assert/strict' import test from 'node:test' import { formatDateTime, formatPublishedElapsedTime } from '../src/utils/date-time.ts' test('formatPublishedElapsedTime formats elapsed time for worker hall', () => { const baseTime = new Date('2026-09-13T10:00:00.000Z').getTime() // Invalid or empty assert.equal(formatPublishedElapsedTime(null, baseTime), '') assert.equal(formatPublishedElapsedTime('', baseTime), '') assert.equal(formatPublishedElapsedTime('invalid-date', baseTime), '') // <1m assert.equal( formatPublishedElapsedTime(new Date(baseTime - 30 * 1000).toISOString(), baseTime), '发布 <1m', ) // 5m assert.equal( formatPublishedElapsedTime(new Date(baseTime - 5 * 60 * 1000).toISOString(), baseTime), '发布 5m', ) // 1h assert.equal( formatPublishedElapsedTime(new Date(baseTime - 60 * 60 * 1000).toISOString(), baseTime), '发布 1h', ) // 1h 25m assert.equal( formatPublishedElapsedTime(new Date(baseTime - 85 * 60 * 1000).toISOString(), baseTime), '发布 1h 25m', ) // 2d 3h assert.equal( formatPublishedElapsedTime(new Date(baseTime - (48 + 3) * 3600 * 1000).toISOString(), baseTime), '发布 2d 3h', ) })