1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| package cn.iocoder.yudao.module.mes.service.pro.task.schedule;
| import cn.iocoder.yudao.module.mes.dal.dataobject.pro.workorder.MesProWorkOrderDO;
| import org.junit.jupiter.api.Test;
| import java.time.LocalDateTime;
| import java.util.List;
| import static org.junit.jupiter.api.Assertions.assertEquals;
|
| class MesSchedulePriorityTest {
| @Test void higherPriorityFirstThenEarlierDeliveryThenId() {
| var low = new MesProWorkOrderDO().setId(1L).setSchedulePriority(0).setRequestDate(LocalDateTime.of(2026,1,1,0,0));
| var high = new MesProWorkOrderDO().setId(2L).setSchedulePriority(9).setRequestDate(LocalDateTime.of(2026,2,1,0,0));
| var older = new MesProWorkOrderDO().setId(3L).setSchedulePriority(9).setRequestDate(LocalDateTime.of(2026,1,2,0,0));
| assertEquals(List.of(3L,2L,1L), List.of(low,high,older).stream().sorted(MesSchedulePriority.comparator()).map(MesProWorkOrderDO::getId).toList());
| }
| }
|
|