package jnpf.dmsController; import jnpf.dmsService.DmsDanganCundangJieshouService; import jnpf.dmsService.DmsDanganCundangShenqingTongguoService; import jnpf.dmsService.DmsWenjianGuidangService; import org.junit.jupiter.api.Test; import org.springframework.http.MediaType; import org.springframework.test.web.servlet.MockMvc; import org.springframework.test.web.servlet.setup.MockMvcBuilders; import static org.mockito.Mockito.*; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; class DmsArchiveRouteRegistrationTest extends DmsControllerTestSupport { @Test void bothControllersRegisterAndApprovalUsesOriginalArchiveService() throws Exception { DmsDanganCundangShenqingTongguoService approval = mock(DmsDanganCundangShenqingTongguoService.class); DmsWenjianGuidangService entry = mock(DmsWenjianGuidangService.class); MockMvc mvc = MockMvcBuilders.standaloneSetup( new DmsDanganCundangJieshouController(mock(DmsDanganCundangJieshouService.class), approval), new DmsWenjianGuidangController(entry)).build(); for (String body : new String[]{"{\"flow_id\":\"flow\",\"task_id\":\"task\"}", "{\"flowId\":\"flow\",\"taskId\":\"task\"}"}) { mvc.perform(post("/biz/dangan/cundang/tongguo") .contentType(MediaType.APPLICATION_JSON).content(body)) .andExpect(status().isOk()).andExpect(jsonPath("$.code").value(200)); } verify(approval, times(2)).tongguo("flow", "task"); verifyNoInteractions(entry); mvc.perform(post("/biz/wenjian/guidang/shenqing/check") .contentType(MediaType.APPLICATION_JSON).content("{\"dayin_jilu_ids\":[\"copy\"]}")) .andExpect(status().isOk()).andExpect(jsonPath("$.code").value(200)); verify(entry).prepare(any()); } }