自动化立体仓库 - WMS系统
src/test/java/com/zy/api/service/impl/WcsApiServiceImplTest.java
@@ -22,6 +22,7 @@
import org.mockito.junit.jupiter.MockitoExtension;
import org.springframework.test.util.ReflectionTestUtils;
import java.math.BigDecimal;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
@@ -131,6 +132,63 @@
    }
    @Test
    void receviceTaskFromWcs_marksEmptyPalletInboundCompleteWhenTaskCompleteUsesCrnNotifyType() {
        WrkMast mast = moveMast(10);
        when(wrkMastService.selectOne(any())).thenReturn(mast);
        when(wrkMastService.updateById(mast)).thenReturn(true);
        service.receviceTaskFromWcs(new ReceviceTaskParams()
                .setNotifyType("Crn")
                .setMsgType("task_complete")
                .setSuperTaskNo("7597"));
        assertEquals(Long.valueOf(4L), mast.getWrkSts());
        verify(wrkMastService).updateById(mast);
    }
    @Test
    void receviceTaskFromWcs_recordsTaskCompleteWeightOnMast() {
        WrkMast mast = moveMast(1);
        when(wrkMastService.selectOne(any())).thenReturn(mast);
        when(wrkMastService.updateById(mast)).thenReturn(true);
        service.receviceTaskFromWcs(new ReceviceTaskParams()
                .setNotifyType("Crn")
                .setMsgType("task_complete")
                .setSuperTaskNo("7597")
                .setWeight(32.5D));
        assertEquals(new BigDecimal("32.5"), mast.getScWeight());
        assertEquals(Long.valueOf(4L), mast.getWrkSts());
        verify(wrkMastService).updateById(mast);
    }
    @Test
    void receviceTaskFromWcs_doesNotAutoCompleteUnsupportedIoTypeTwo() {
        WrkMast mast = moveMast(2);
        when(wrkMastService.selectOne(any())).thenReturn(mast);
        service.receviceTaskFromWcs(new ReceviceTaskParams()
                .setNotifyType("Crn")
                .setMsgType("task_complete")
                .setSuperTaskNo("7597"));
        assertEquals(Long.valueOf(2L), mast.getWrkSts());
        verify(wrkMastService, never()).updateById(mast);
    }
    @Test
    void updateWrkMastAfterPublish_marksEmptyPalletInboundRunning() {
        WrkMast mast = moveMast(10);
        mast.setWrkSts(1L);
        ReflectionTestUtils.invokeMethod(service, "updateWrkMastAfterPublish", mast);
        assertEquals(Long.valueOf(2L), mast.getWrkSts());
        verify(wrkMastService).updateById(mast);
    }
    @Test
    @SuppressWarnings("unchecked")
    void buildReassignCrnSearchOrder_currentThree_shouldSearchSmallerThenWrapDescending() {
        List<Integer> result = ReflectionTestUtils.invokeMethod(