test: 完善 OrderStateMachine 和 OpsOrderService 测试用例

This commit is contained in:
lzh
2026-01-21 09:30:29 +08:00
parent 22fad4ad31
commit 8590f3c044

View File

@@ -401,4 +401,29 @@ public class OpsOrderServiceTest {
verify(orderLifecycleManager, never()).cancelOrder(anyLong(), anyLong(), any(OperatorTypeEnum.class), anyString());
}
@Test
void testAssignOrder_FromQueuedStatus_Success() {
// Given
testOrder.setStatus(WorkOrderStatusEnum.QUEUED.getStatus());
OpsOrderAssignReqDTO assignReq = new OpsOrderAssignReqDTO();
assignReq.setOrderId(1L);
assignReq.setAssigneeId(2001L);
assignReq.setRemark("从队列分配");
when(opsOrderMapper.selectById(1L)).thenReturn(testOrder);
// When
assertDoesNotThrow(() -> opsOrderService.assignOrder(assignReq, OperatorTypeEnum.ADMIN, 1002L));
// Then
verify(orderStateMachine, times(1)).transition(
eq(testOrder),
eq(WorkOrderStatusEnum.DISPATCHED),
eq(OperatorTypeEnum.ADMIN),
eq(1002L),
eq("从队列分配")
);
assertEquals(2001L, testOrder.getAssigneeId());
}
}