import { WagonReadiness } from '@edr/types'; import { requiredWagonReadiness, wagonReadinessMatchesSchedule, } from './wagon-readiness.util'; describe('wagonReadinessMatchesSchedule', () => { it('requires IMPORT_READY for IMPORT schedules', () => { expect(requiredWagonReadiness('IMPORT')).toBe(WagonReadiness.ImportReady); expect( wagonReadinessMatchesSchedule(WagonReadiness.ImportReady, 'IMPORT'), ).toBe(true); expect( wagonReadinessMatchesSchedule(WagonReadiness.ExportReady, 'IMPORT'), ).toBe(false); }); it('requires EXPORT_READY for EXPORT schedules', () => { expect(requiredWagonReadiness('EXPORT')).toBe(WagonReadiness.ExportReady); expect( wagonReadinessMatchesSchedule(WagonReadiness.ExportReady, 'EXPORT'), ).toBe(true); expect( wagonReadinessMatchesSchedule(WagonReadiness.ImportReady, 'EXPORT'), ).toBe(false); }); it('allows any readiness for DOMESTIC schedules', () => { expect(requiredWagonReadiness('DOMESTIC')).toBeNull(); expect( wagonReadinessMatchesSchedule(WagonReadiness.ExportReady, 'DOMESTIC'), ).toBe(true); }); });