package jnpf.dmsController;
|
|
import jnpf.dmsService.DmsDanganCundangJieshouService;
|
import jnpf.dmsEntity.DmsDanganCundangShenqingDanganheEntity;
|
import org.junit.Before;
|
import org.junit.Test;
|
import org.mockito.ArgumentCaptor;
|
import org.springframework.http.MediaType;
|
import org.springframework.test.web.servlet.MockMvc;
|
import org.springframework.test.web.servlet.setup.MockMvcBuilders;
|
|
import static org.junit.Assert.assertEquals;
|
import static org.mockito.Mockito.mock;
|
import static org.mockito.Mockito.verify;
|
import static org.mockito.Mockito.when;
|
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 DmsDanganCundangJieshouControllerTest {
|
|
private MockMvc mockMvc;
|
private DmsDanganCundangJieshouService jieshouService;
|
|
@Before
|
public void setUp() {
|
jieshouService = mock(DmsDanganCundangJieshouService.class);
|
DmsDanganCundangJieshouController controller = new DmsDanganCundangJieshouController(jieshouService);
|
mockMvc = MockMvcBuilders.standaloneSetup(controller).build();
|
}
|
|
@Test
|
public void jieshouPassesSnakeCaseRequestFieldsToService() throws Exception {
|
mockMvc.perform(post("/biz/dangan/cundang/jieshou")
|
.contentType(MediaType.APPLICATION_JSON)
|
.content("{\"danganhe_xinxi\":[{\"id\":\"box-1\",\"f_id\":\"box-1\"}],"
|
+ "\"biz_review_user\":\"reviewer-1\",\"biz_user_id\":\"receiver-1\","
|
+ "\"biz_sign\":\"sign-1\",\"biz_review_sign\":\"review-sign-1\"}"))
|
.andExpect(status().isOk())
|
.andExpect(jsonPath("$.code").value(200))
|
.andExpect(jsonPath("$.msg").value("档案存档接收成功"));
|
|
ArgumentCaptor<jnpf.dmsEntity.form.DmsDanganCundangJieshouForm> captor = ArgumentCaptor.forClass(
|
jnpf.dmsEntity.form.DmsDanganCundangJieshouForm.class);
|
verify(jieshouService).jieshou(captor.capture());
|
assertEquals("receiver-1", captor.getValue().getBizUserId());
|
assertEquals("reviewer-1", captor.getValue().getBizReviewUser());
|
assertEquals("box-1", captor.getValue().getDanganheXinxi().get(0).getFId());
|
}
|
|
@Test
|
public void checkPassesDanganheBianhaoToService() throws Exception {
|
DmsDanganCundangShenqingDanganheEntity danganhe = new DmsDanganCundangShenqingDanganheEntity();
|
danganhe.setId("box-1");
|
danganhe.setDanganheBianhao("DAH-001");
|
when(jieshouService.check("box-1")).thenReturn(danganhe);
|
|
mockMvc.perform(post("/biz/dangan/cundang/jieshou/check")
|
.contentType(MediaType.APPLICATION_JSON)
|
.content("{\"danganhe_bianhao\":\"box-1\"}"))
|
.andExpect(status().isOk())
|
.andExpect(jsonPath("$.code").value(200))
|
.andExpect(jsonPath("$.msg").value("档案盒可接收"))
|
.andExpect(jsonPath("$.data.f_id").value("box-1"))
|
.andExpect(jsonPath("$.data.danganhe_bianhao").value("DAH-001"));
|
|
verify(jieshouService).check("box-1");
|
}
|
}
|