import { BadRequestException } from '@nestjs/common'; import { shanghaiDateRange } from './shanghai-date-range'; describe('shanghaiDateRange', () => { it('builds an inclusive Asia/Shanghai day range', () => { expect(shanghaiDateRange('2026-08-01', '2026-08-03')).toEqual({ gte: new Date('2026-08-01T00:00:00+08:00'), lte: new Date('2026-08-03T23:59:59.999+08:00'), }); }); it('rejects malformed or reversed ranges', () => { expect(() => shanghaiDateRange('2026/08/01', undefined)).toThrow(BadRequestException); expect(() => shanghaiDateRange('2026-02-31', undefined)).toThrow('日期无效'); expect(() => shanghaiDateRange('2026-08-03', '2026-08-01')).toThrow('开始日期不能晚于结束日期'); }); });