import { describe, expect, it } from 'vitest' import { oceanBookingStatusLabel, outboundDispatchStatusLabel, pickTaskStatusLabel, timelineActionLabel, timelineModuleLabel, timelineStatusLabel, truckStatusLabel } from './statusLabels' describe('outbound dispatch status labels', () => { it('maps list statuses to business Chinese', () => { expect(outboundDispatchStatusLabel('READY_FOR_DISPATCH')).toBe('待确认出仓') expect(outboundDispatchStatusLabel('WAITING_FOR_LOADING')).toBe('等待装柜') expect(oceanBookingStatusLabel('RELEASED')).toBe('已放舱') expect(truckStatusLabel('PICKUP_IN_PROGRESS')).toBe('提柜中') expect(pickTaskStatusLabel('PENDING')).toBe('待拣货') expect(pickTaskStatusLabel('IN_PROGRESS')).toBe('拣货中') expect(pickTaskStatusLabel('AWAITING_REVIEW')).toBe('待复核') expect(pickTaskStatusLabel('COMPLETED')).toBe('已完成') }) it('localizes timeline modules, actions and module-specific states', () => { expect(timelineModuleLabel('OUTBOUND_DISPATCH')).toBe('国内出仓') expect(timelineActionLabel('CONFIRM_DISPATCH')).toBe('确认出仓') expect(timelineStatusLabel('OUTBOUND_DISPATCH', 'READY_FOR_DISPATCH')).toBe('待确认出仓') expect(timelineStatusLabel('OCEAN_BOOKING', 'RELEASED')).toBe('已放舱') expect(timelineStatusLabel('TRUCK_APPOINTMENT', 'COMPLETED')).toBe('已完成') expect(timelineStatusLabel('INBOUND', 'WAIT_SPLIT')).toBe('待分柜') }) it('does not expose unknown backend enum values', () => { expect(outboundDispatchStatusLabel('NEW_BACKEND_STATE')).toBe('未知状态') expect(timelineModuleLabel('NEW_MODULE')).toBe('其他业务流程') expect(timelineActionLabel('NEW_ACTION')).toBe('状态更新') expect(timelineStatusLabel('NEW_MODULE', 'NEW_STATE')).toBe('未知状态') }) })