package jnpf.dmsController;
|
|
import jnpf.dmsService.DmsWenjianBianhaoGuizeFeiqiService;
|
import jnpf.dmsService.DmsWenjianBianhaoGuizeShengbanCheckService;
|
import jnpf.dmsService.DmsWenjianBianhaoGuizeTongguoService;
|
import org.junit.Before;
|
import org.junit.Test;
|
import org.springframework.http.MediaType;
|
import org.springframework.test.util.ReflectionTestUtils;
|
import org.springframework.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
|
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.verify;
|
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.jsonPath;
|
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
|
public class DmsWenjianBianhaoGuizeControllerTest {
|
|
private MockMvc mockMvc;
|
private DmsWenjianBianhaoGuizeFeiqiService feiqiService;
|
private DmsWenjianBianhaoGuizeTongguoService tongguoService;
|
private DmsWenjianBianhaoGuizeShengbanCheckService shengbanCheckService;
|
|
@Before
|
public void setUp() {
|
DmsWenjianBianhaoGuizeController controller = new DmsWenjianBianhaoGuizeController();
|
feiqiService = mock(DmsWenjianBianhaoGuizeFeiqiService.class);
|
tongguoService = mock(DmsWenjianBianhaoGuizeTongguoService.class);
|
shengbanCheckService = mock(DmsWenjianBianhaoGuizeShengbanCheckService.class);
|
ReflectionTestUtils.setField(controller, "feiqiService", feiqiService);
|
ReflectionTestUtils.setField(controller, "tongguoService", tongguoService);
|
ReflectionTestUtils.setField(controller, "shengbanCheckService", shengbanCheckService);
|
mockMvc = MockMvcBuilders.standaloneSetup(controller).build();
|
}
|
|
@Test
|
public void feiqiReadsFlowAndTaskIdsFromRequestBody() throws Exception {
|
mockMvc.perform(post("/biz/wenjian/bianhao/guize/feiqi")
|
.contentType(MediaType.APPLICATION_JSON)
|
.content("{\"flow_id\":\"flow-1\",\"task_id\":\"task-1\"}"))
|
.andExpect(status().isOk())
|
.andExpect(jsonPath("$.code").value(200))
|
.andExpect(jsonPath("$.msg").value("文件编号规则废弃成功"));
|
|
verify(feiqiService).feiqiGuize("flow-1", "task-1");
|
}
|
|
@Test
|
public void tongguoReadsFlowAndTaskIdsFromRequestBody() throws Exception {
|
mockMvc.perform(post("/biz/wenjian/bianhao/guize/tongguo")
|
.contentType(MediaType.APPLICATION_JSON)
|
.content("{\"flow_id\":\"flow-1\",\"task_id\":\"task-1\"}"))
|
.andExpect(status().isOk())
|
.andExpect(jsonPath("$.code").value(200))
|
.andExpect(jsonPath("$.msg").value("文件编号规则审核通过处理成功"));
|
|
verify(tongguoService).tongguo("flow-1", "task-1");
|
}
|
|
@Test
|
public void shengbanCheckReadsSerialNumberAndVersionFromRequestBody() throws Exception {
|
mockMvc.perform(post("/biz/wenjian/bianhao/guize/shengban/check")
|
.contentType(MediaType.APPLICATION_JSON)
|
.content("{\"f_id\":\"rule-1\",\"guize_liushuihao\":\"serial-1\",\"banbenhao\":\"V2\"}"))
|
.andExpect(status().isOk())
|
.andExpect(jsonPath("$.code").value(200))
|
.andExpect(jsonPath("$.msg").value("文件编号规则升版校验通过"));
|
|
verify(shengbanCheckService).check("rule-1", "serial-1", "V2");
|
}
|
}
|