From 18779b4ad6b496efeb52d7b6bd994e57ead50ae8 Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Mon, 8 Jun 2020 11:21:27 +0800 Subject: [PATCH 01/59] OCT REM: 1. demo commit --- .../java/com/dispose/test/controller/AuthControllerQATest.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java index 4538906f..5e8854e4 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java @@ -280,7 +280,7 @@ public class AuthControllerQATest extends InitTestEnvironment { } /** - * C 1 normal logout test. + * C 1 normal logout test . * * @throws Exception the exception */ From 3db15e16157fc54f3b87f536f162e613f38eeae3 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Mon, 8 Jun 2020 15:46:04 +0800 Subject: [PATCH 02/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E5=88=A4=E6=96=AD=E4=BB=A3=E7=A0=81=202.=20?= =?UTF-8?q?=E8=BF=87=E6=BB=A4=E8=8E=B7=E5=8F=96=E8=83=BD=E5=8A=9B=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=8E=A5=E5=8F=A3=E7=9A=84=E8=BF=94=E5=9B=9E=E6=B6=88?= =?UTF-8?q?=E6=81=AF=203.=20=E8=BF=87=E6=BB=A4=E8=8A=82=E7=82=B9=E9=98=B2?= =?UTF-8?q?=E6=8A=A4IP=E6=8E=A5=E5=8F=A3=E7=9A=84=E8=BF=94=E5=9B=9E?= =?UTF-8?q?=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/DisposeNodeInfoController.java | 24 ++++++++++--------- .../impl/UserAccountCacheManagerImpl.java | 1 - .../com/dispose/pojo/dto/ProtocolRespDTO.java | 10 ++++++++ 3 files changed, 23 insertions(+), 12 deletions(-) diff --git a/src/main/java/com/dispose/controller/DisposeNodeInfoController.java b/src/main/java/com/dispose/controller/DisposeNodeInfoController.java index ac771f50..680bd6c0 100644 --- a/src/main/java/com/dispose/controller/DisposeNodeInfoController.java +++ b/src/main/java/com/dispose/controller/DisposeNodeInfoController.java @@ -5,6 +5,7 @@ import com.dispose.common.Helper; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.dto.ProtocolRespDTO; import com.dispose.pojo.entity.DisposeDevice; +import com.dispose.pojo.vo.common.DisposeCapacity; import com.dispose.pojo.vo.common.IDArrayReq; import com.dispose.pojo.vo.common.TaskInfoData; import com.dispose.pojo.vo.common.TaskInfoDetail; @@ -83,7 +84,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -147,7 +148,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -210,7 +211,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -276,7 +277,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -316,7 +317,7 @@ public class DisposeNodeInfoController { rspInfo.getItems().add(cpData); }); - return ProtocolRespDTO.result(err, rspInfo); + return ProtocolRespDTO.result(err, rspInfo, DisposeCapacity.CapacityView.class); } /** @@ -342,7 +343,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -381,7 +382,8 @@ public class DisposeNodeInfoController { rspInfo.getItems().add(cpData); }); - return ProtocolRespDTO.result(err, rspInfo); + return ProtocolRespDTO.result(err, rspInfo, DisposeCapacity.DependIpView.class); + } /** @@ -412,7 +414,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -484,7 +486,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -553,7 +555,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -642,7 +644,7 @@ public class DisposeNodeInfoController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } diff --git a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java index adf601f3..ce94aaa1 100644 --- a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java +++ b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java @@ -266,7 +266,6 @@ public class UserAccountCacheManagerImpl implements UserAccountCacheManager { uc = UserAccountCache.builder() .username(username) .token(createUserToken(username)) - .lastAccess(System.currentTimeMillis()) .pwdErrTimes(0) .lastAccess(System.currentTimeMillis()).build(); diff --git a/src/main/java/com/dispose/pojo/dto/ProtocolRespDTO.java b/src/main/java/com/dispose/pojo/dto/ProtocolRespDTO.java index ffc0d870..6b3be27a 100644 --- a/src/main/java/com/dispose/pojo/dto/ProtocolRespDTO.java +++ b/src/main/java/com/dispose/pojo/dto/ProtocolRespDTO.java @@ -34,6 +34,12 @@ public class ProtocolRespDTO extends BaseProtocolDTO { return objectMapper.writeValueAsString(obj); } + private static String getObjectJson(Object obj, Class objType) throws JsonProcessingException { + ObjectMapper objectMapper = new ObjectMapper(); + + return objectMapper.writerWithView(objType).writeValueAsString(obj); + } + /** * Result protocol resp dto. * @@ -76,6 +82,10 @@ public class ProtocolRespDTO extends BaseProtocolDTO { return result(err, getObjectJson(obj), ConstValue.Protocol.CRYPTO_NONE); } + public static ProtocolRespDTO result(ErrorCode err, Object obj, Class objType) throws JsonProcessingException { + return result(err, getObjectJson(obj, objType), ConstValue.Protocol.CRYPTO_NONE); + } + /** * Result protocol resp dto. * From d26b0db93dfdd680c1bad17f36f0341cc0689910 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Mon, 8 Jun 2020 17:20:14 +0800 Subject: [PATCH 03/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E9=87=8D=E5=A4=8D=E5=AD=97=E6=AE=B5=E5=88=A4=E7=A9=BA=E7=9A=84?= =?UTF-8?q?=E4=BB=A3=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/controller/DisposeTaskController.java | 7 +++---- .../java/com/dispose/service/impl/TaskServiceImpl.java | 2 +- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/main/java/com/dispose/controller/DisposeTaskController.java b/src/main/java/com/dispose/controller/DisposeTaskController.java index b2822ed8..f17189b1 100644 --- a/src/main/java/com/dispose/controller/DisposeTaskController.java +++ b/src/main/java/com/dispose/controller/DisposeTaskController.java @@ -178,8 +178,7 @@ public class DisposeTaskController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); if (reqInfo.getTaskId() == null - || Arrays.stream(reqInfo.getTaskId()).anyMatch(v -> v.length() == 0) - || Arrays.stream(reqInfo.getTaskId()).anyMatch(Objects::isNull)) { + || Arrays.stream(reqInfo.getTaskId()).anyMatch(v -> v.length() == 0)) { log.error("Request taskId params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -486,7 +485,7 @@ public class DisposeTaskController { GetTaskReq reqInfo = mr.getRequestObject(GetTaskReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request id params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } @@ -585,7 +584,7 @@ public class DisposeTaskController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getTaskId() == null || Arrays.stream(reqInfo.getTaskId()).anyMatch(Objects::isNull)) { + if (reqInfo.getTaskId() == null) { log.error("Request taskId params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 9d30a303..d47aa41d 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -155,7 +155,7 @@ public class TaskServiceImpl implements TaskService { ErrorCode err = taskCacheManager.addTask(cacheTask); - log.info("Create new dispose task is running: devId:{}, disposeIp:{}, type:{}, result:{}", + log.info("Create new dispose task: devId:{}, disposeIp:{}, type:{}, result:{}", task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); return MulReturnType.builder().firstParam(err).secondParam(task.getId()).build(); From 941be7d19abb590d931a7fecd13ae102bde04fcf Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Mon, 8 Jun 2020 17:55:40 +0800 Subject: [PATCH 04/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E8=8A=82=E7=82=B9=E5=85=A5=E5=8F=82=E5=AD=97?= =?UTF-8?q?=E6=AE=B5=E7=9A=84=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dispose/controller/DisposeNodeManagerController.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/dispose/controller/DisposeNodeManagerController.java b/src/main/java/com/dispose/controller/DisposeNodeManagerController.java index 5317223e..d6ef7831 100644 --- a/src/main/java/com/dispose/controller/DisposeNodeManagerController.java +++ b/src/main/java/com/dispose/controller/DisposeNodeManagerController.java @@ -144,13 +144,12 @@ public class DisposeNodeManagerController { IDArrayReq reqInfo = mr.getRequestObject(IDArrayReq.class); - if (reqInfo.getId() == null || Arrays.stream(reqInfo.getId()).anyMatch(Objects::isNull)) { + if (reqInfo.getId() == null) { log.error("Request params error, error:{}", mr.getMsgContent()); return ProtocolRespDTO.result(ErrorCode.ERR_PARAMS); } - if (reqInfo.getId().length > 1 - || Arrays.stream(reqInfo.getId()).anyMatch(v -> v.length() == 0)) { + if (reqInfo.getId()[0].length() == 0) { log.error("Prohibit deleting multiple devices at the same time"); return ProtocolRespDTO.result(ErrorCode.ERR_REMOVEMORE); } From 0ede48d64736a378588debe32f44c683a2fc7243 Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Tue, 9 Jun 2020 09:55:37 +0800 Subject: [PATCH 05/59] =?UTF-8?q?OCT=20REM:=201.=20=E8=AE=A4=E8=AF=81?= =?UTF-8?q?=E5=92=8C=E8=8A=82=E7=82=B9=E7=AE=A1=E7=90=86=E5=8D=95=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/AuthControllerQATest.java | 171 +++++++++++++ .../DeviceNodeManagerControllerQATest.java | 234 ++++++++++++++++++ 2 files changed, 405 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java index 5e8854e4..cc82282b 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java @@ -279,6 +279,119 @@ public class AuthControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PASSWORD.getCode())); } + /** + * B 3 password empty exception test. + * + * @throws Exception the exception + */ + @Test + public void b3_loginPasswordEmptyExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"password\\\":\\\"\\\",\\\"userName\\\":\\\"admin\\\"}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/login") + .contentType(MediaType.APPLICATION_JSON) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PASSWORD.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PASSWORD.getCode())); + } + + /** + * B 4 msg empty exception test. + * + * @throws Exception the exception + */ + @Test + public void b4_loginMsgEmptyExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/login") + .contentType(MediaType.APPLICATION_JSON) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * B 5 msg null exception test. + * + * @throws Exception the exception + */ + @Test + public void b5_loginMsgNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"null\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/login") + .contentType(MediaType.APPLICATION_JSON) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * B 6 username type exception test. + * + * @throws Exception the exception + */ + @Test + public void b6_loginUsernameTypeExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"" + + "{\\\"password\\\":\\\"c3855e6b6bb120450f160ba91134522868f89d36062f2061ebeefd80817e1d58\\\"," + + "\\\"userName\\\":1}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/login") + .contentType(MediaType.APPLICATION_JSON) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_USERNOTFOUND.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_USERNOTFOUND.getCode())); + } + /** * C 1 normal logout test . * @@ -396,4 +509,62 @@ public class AuthControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); } + + /** + * C 5 msg empty exception test. + * + * @throws Exception the exception + */ + @Test + public void c5_logoutMsgEmptyExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604300195," + + "\"msgContent\":\"\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + /** + * C 6 msg null exception test. + * + * @throws Exception the exception + */ + @Test + public void c6_logoutMsgNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604300195," + + "\"msgContent\":\"null\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + } diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java index 4734ac5e..31dadc64 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java @@ -276,6 +276,214 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { } + /** + * A 10 add device node ver json exception test. + * + * @throws Exception the exception + */ + @Test + public void a10_addDeviceNodeVerJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":\"cryptoType\":0,\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * A 11 add device node ver null exception test. + * + * @throws Exception the exception + */ + @Test + public void a11_addDeviceNodeVerNullExceptionTest() throws Exception { + String reqData = "{\"ver\":null,\"cryptoType\":0,\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * A 12 add device node ver string exception test. + * + * @throws Exception the exception + */ + @Test + public void a12_addDeviceNodeVerStingChaExceptionTest() throws Exception { + String reqData = "{\"ver\":\"a\",\"cryptoType\":0,\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * A 13 add device node ver string exception test. + * + * @throws Exception the exception + */ + @Test + public void a13_addDeviceNodeVerStingNumExceptionTest() throws Exception { + String reqData = "{\"ver\":\"1\",\"cryptoType\":0,\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_VERSION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_VERSION.getCode())); + } + /** + * A 14 add device node crypto json exception test. + * + * @throws Exception the exception + */ + @Test + public void a14_addDeviceNodeCryptoJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * A 15 add device node crypto null exception test. + * + * @throws Exception the exception + */ + @Test + public void a15_addDeviceNodeCryptoNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":null,\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + + /** + * A 16 add device node crypto string exception test. + * + * @throws Exception the exception + */ + @Test + public void a16_addDeviceNodeCryptoStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":\"a\",\"timeStamp\":1587628826908," + + "\"msgContent\":\"{\\\"items\\\":[{\\\"areaCode\\\":0,\\\"ipAddr\\\":\\\"10.88.77.15\\\"," + + "\\\"manufacturer\\\":\\\"DPTech\\\",\\\"model\\\":\\\"UMC\\\",\\\"name\\\":\\\"中移杭研实验室清洗设备\\\"," + + "\\\"readme\\\":\\\"实验室测试设备\\\",\\\"type\\\":0,\\\"version\\\":\\\"5.7.13\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", "Bearer " + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } /** * B 2 del device node Msg Empty exception test. * @@ -379,6 +587,32 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + } + /** + * B 6 del device node id empty exception test. + * + * @throws Exception the exception + */ + @Test + public void b6_delDeviceNodeIdEmptyExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":[]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .put("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + Assert.assertNotNull(rspInfo.getMessage()); Assert.assertNotNull(rspInfo.getStatus()); Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); From 919c1c42a2884b0f8a04a8911f5bc6ef93a22437 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 9 Jun 2020 16:31:21 +0800 Subject: [PATCH 06/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83=E7=B4=A0?= =?UTF-8?q?=E4=B8=BAnull=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=202.?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E5=85=83=E7=B4=A0=E4=B8=BA=E7=A9=BA=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E4=B8=B2=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=203.=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 397 ++++++++++++++++-- 1 file changed, 368 insertions(+), 29 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 317e8a71..d080f83e 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -306,6 +306,69 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * A 8 get version array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void a8_getVersionArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ver), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * A 9 get version Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void a9_getVersionArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + VersionListRsp versionListRsp = objectMapper.readValue(verifyResp(ver), VersionListRsp.class); + List verList = versionListRsp.getItems(); + + for (VersionRsp versionRsp : verList + ) { + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + } + + /** * B 1 get device info normal one exist device test. * @@ -532,6 +595,67 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * B 8 get device info array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void b8_getDeviceInfoArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String deviceInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(deviceInfo), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * b 9 get device info Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void b9_getDeviceInfoArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String deviceInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceInfoRsp deviceInfoRsp = objectMapper.readValue(verifyResp(deviceInfo), DeviceInfoRsp.class); + List verList = deviceInfoRsp.getItems(); + + for (DeviceInfoData deviceInfoData : verList + ) { + Assert.assertNotNull(deviceInfoData.getId()); + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + } + /** * C 1 get link status normal one online device test. * @@ -772,6 +896,71 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + + /** + * C 8 get link status array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void c8_getLinkStatusArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(linkstatus), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * C 9 get link status Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void c9_getLinkStatusArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + LinkStatusListRsp linkStatusListRsp = objectMapper.readValue(verifyResp(linkstatus), LinkStatusListRsp.class); + List linkStatusRspList = linkStatusListRsp.getItems(); + + for (LinkStatusRsp linkStatusRsp : linkStatusRspList + ) { + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + } + + /** * d1 get one node capacity . */ @@ -799,8 +988,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -837,8 +1028,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -875,8 +1068,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -887,7 +1082,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { /** - * d4 msgContent empty . + * d4 get capacity msgContent empty exception test. * * @throws Exception the exception */ @@ -912,10 +1107,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * d5 msgContent null . + * d5 get capacity msgContent null exception test. * * @throws Exception the exception */ @@ -940,10 +1136,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * d6 id null . + * d6 get capacity id null exception test. * * @throws Exception the exception */ @@ -968,10 +1165,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * d7 id "abc" . + * d7 get capacity id "abc" exception test. * * @throws Exception the exception */ @@ -1008,7 +1206,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { /** - * d8 id Integer . + * d8 get capacity id Integer exception test. * * @throws Exception the exception */ @@ -1033,10 +1231,72 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * e1 get a node protection IP that exists. + * D 9 get capacity array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void d9_getGetCapacityArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String capacity = mockMvc.perform(MockMvcRequestBuilders + .post("/information/capacity") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * D 10 get capacity Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void d10_GetCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String capacity = mockMvc.perform(MockMvcRequestBuilders + .post("/information/capacity") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); + List deviceCapacityDataList = deviceCapacityRsp.getItems(); + + for (DeviceCapacityData deviceCapacityData : deviceCapacityDataList + ) { + Assert.assertNotNull(deviceCapacityData.getId()); + Assert.assertEquals(String.valueOf(deviceCapacityData.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(deviceCapacityData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + } + + /** + * e1 get protection IP a node protection IP that exists exception test. */ @Test public void e1_NormalGetOneNodeProtectionIpTest() throws Exception { @@ -1049,7 +1309,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(200)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); @@ -1062,8 +1322,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -1089,7 +1351,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(200)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); @@ -1102,8 +1364,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -1130,7 +1394,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(200)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); @@ -1143,8 +1407,10 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { if (v.getStatus() == 0) { Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } if (v.getCapacity() != null) { @@ -1157,7 +1423,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * e4 msgContent empty . + * e4 get protection IP msgContent empty exception test. * * @throws Exception the exception */ @@ -1166,27 +1432,28 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"\"}"; - String capacity = mockMvc.perform(MockMvcRequestBuilders + String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * e5 msgContent null . + * e5 get protection IP msgContent null exception test. * * @throws Exception the exception */ @@ -1195,26 +1462,27 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":null}"; - String capacity = mockMvc.perform(MockMvcRequestBuilders + String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * e6 id empty . + * e6 get protection IP id empty exception test. * * @throws Exception the exception */ @@ -1223,26 +1491,27 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":null}\"}"; - String capacity = mockMvc.perform(MockMvcRequestBuilders + String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * e7 id "abd" . + * e7 get protection IP id "abd" exception test. * * @throws Exception the exception */ @@ -1251,27 +1520,28 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":\\\"abd\\\"}\"}"; - String capacity = mockMvc.perform(MockMvcRequestBuilders + String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * e8 id Integer . + * e8 get protection IP id Integer exception test. * * @throws Exception the exception */ @@ -1280,22 +1550,91 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":1}\"}"; - String capacity = mockMvc.perform(MockMvcRequestBuilders + String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + + /** + * e9 get protection IP array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void d9_GetIpArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String protectedIp = mockMvc.perform(MockMvcRequestBuilders + .post("/information/protected_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * e10 get protection IP Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void d10_getGetCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String protectedIp = mockMvc.perform(MockMvcRequestBuilders + .post("/information/protected_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); + deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + + if (v.getCapacity() != null) { + v.getCapacity().forEach(k -> { + Assert.assertNotNull(k.getType()); + Assert.assertNotNull(k.getDisposeIp()); + }); + } + }); } /** From ed30556cae3c1dc6099ab701e737e758d2f27e2c Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 9 Jun 2020 17:14:56 +0800 Subject: [PATCH 07/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83=E7=B4=A0?= =?UTF-8?q?=E4=B8=BAnull=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=202.?= =?UTF-8?q?=20=E5=A2=9E=E5=8A=A0=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E5=85=83=E7=B4=A0=E4=B8=BA=E7=A9=BA=E5=AD=97=E7=AC=A6?= =?UTF-8?q?=E4=B8=B2=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=203.=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 388 ++++++++++++------ 1 file changed, 267 insertions(+), 121 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index d080f83e..7b04f54f 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -1087,7 +1087,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d4_GetCapacityEmptyMsgExistExceptionTest() throws Exception { + public void d4_getCapacityEmptyMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"\"}"; @@ -1116,7 +1116,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d5_GetCapacityNullMsgExistExceptionTest() throws Exception { + public void d5_getCapacityNullMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":null}"; @@ -1145,7 +1145,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d6_GetCapacityEmptyMsgExistExceptionTest() throws Exception { + public void d6_getCapacityEmptyMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":null}\"}"; @@ -1174,7 +1174,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d7_GetCapacityErrIdExistExceptionTest() throws Exception { + public void d7_getCapacityErrIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":[\\\"abc\\\"]}\"}"; @@ -1211,7 +1211,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d8_GetCapacityIntegerIdExistExceptionTest() throws Exception { + public void d8_getCapacityIntegerIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":1}\"}"; @@ -1269,7 +1269,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d10_GetCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + public void d10_getCapacityArrayContainsEmptyStringExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -1428,7 +1428,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e4_GetIpEmptyMsgExistExceptionTest() throws Exception { + public void e4_getIpEmptyMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"\"}"; @@ -1458,7 +1458,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e5_GetIpNullMsgExistExceptionTest() throws Exception { + public void e5_getIpNullMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":null}"; @@ -1487,7 +1487,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e6_GetIpNullMsgExistExceptionTest() throws Exception { + public void e6_getIpNullMsgExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":null}\"}"; @@ -1516,7 +1516,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e7_GetIpErrIdExistExceptionTest() throws Exception { + public void e7_getIpErrIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":\\\"abd\\\"}\"}"; @@ -1546,7 +1546,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e8_GetIpIntegerIdExistExceptionTest() throws Exception { + public void e8_getIpIntegerIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + "\"msgContent\":\"{\\\"id\\\":1}\"}"; @@ -1576,7 +1576,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d9_GetIpArrayContainsNullExceptionTest() throws Exception { + public void e9_getIpArrayContainsNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; @@ -1605,7 +1605,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d10_getGetCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + public void e10_getCapacityArrayContainsEmptyStringExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -1661,34 +1661,31 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); - if (rspInfo.getItems().size() > 0) { - for (NodeTaskData taskData : rspInfo.getItems() - ) { - Assert.assertNotNull(taskData); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); - - if (taskData.getStatus() == 0) { - Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getTaskArray()); - - for (TaskInfoData taskInfoData : taskData.getTaskArray() - ) { - Assert.assertNotNull(taskInfoData); - Assert.assertNotNull(taskInfoData.getTaskId()); - Assert.assertNotNull(taskInfoData.getType()); - Assert.assertNotNull(taskInfoData.getStartTime()); - Assert.assertNotNull(taskInfoData.getDisposeTime()); - Assert.assertNotNull(taskInfoData.getDisposeIp()); - } - - Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } else { - Assert.assertNotEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } @@ -1716,39 +1713,36 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); - if (rspInfo.getItems().size() > 0) { - for (NodeTaskData taskData : rspInfo.getItems() - ) { - Assert.assertNotNull(taskData); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); - - if (taskData.getStatus() == 0) { - Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getTaskArray()); - - for (TaskInfoData taskInfoData : taskData.getTaskArray() - ) { - Assert.assertNotNull(taskInfoData); - Assert.assertNotNull(taskInfoData.getTaskId()); - Assert.assertNotNull(taskInfoData.getType()); - Assert.assertNotNull(taskInfoData.getStartTime()); - Assert.assertNotNull(taskInfoData.getDisposeTime()); - Assert.assertNotNull(taskInfoData.getDisposeIp()); - } - - Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } else { - Assert.assertNotEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } /** - * F 3 msgContent empty . + * F 3 get running task msgContent empty exception test. * * @throws Exception the exception */ @@ -1773,11 +1767,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * F 4 msgContent null . + * F 4 get running task msgContent null exception test. * * @throws Exception the exception */ @@ -1802,10 +1797,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * F 5 id null . + * F 5 get running task id null exception test. * * @throws Exception the exception */ @@ -1831,10 +1827,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * F 6 id does not exist "abc" . + * F 6 get running task id does not exist "abc" exception test. * * @throws Exception the exception */ @@ -1857,20 +1854,93 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(rspInfo); - - if (rspInfo.getItems().size() > 0) { - for (NodeTaskData taskData : rspInfo.getItems() - ) { - Assert.assertNotNull(taskData); - Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); - Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); - Assert.assertNotNull(taskData.getTaskArray()); - } - } + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + }); } + /** + * F 7 get running task array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void f7_getRunTaskArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/run_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * F 8 get running task Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void f8_getRunTaskArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/run_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); + + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } /** * G 1 get multiple node all task normal test. @@ -1896,34 +1966,33 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (NodeTaskData taskData : rspInfo.getItems() - ) { - Assert.assertNotNull(taskData); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - if (taskData.getStatus() == 0) { - Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getTaskArray()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); - for (TaskInfoData taskInfoData : taskData.getTaskArray() - ) { - Assert.assertNotNull(taskInfoData); - Assert.assertNotNull(taskInfoData.getTaskId()); - Assert.assertNotNull(taskInfoData.getCurrentStatus()); - Assert.assertNotNull(taskInfoData.getType()); - Assert.assertNotNull(taskInfoData.getStartTime()); - Assert.assertNotNull(taskInfoData.getDisposeTime()); - Assert.assertNotNull(taskInfoData.getDisposeIp()); - } - - Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } else { - Assert.assertNotEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getCurrentStatus()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } @@ -1951,21 +2020,16 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (NodeTaskData taskData : rspInfo.getItems() - ) { - Assert.assertNotNull(taskData); - Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); - Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); - Assert.assertNotNull(taskData.getTaskArray()); - } - } + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + }); } /** - * G 3 msgContent empty. + * G 3 get all msgContent empty exception test. * * @throws Exception the exception */ @@ -1990,11 +2054,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * G 4 msgContent null. + * G 4 get all msgContent null exception test. * * @throws Exception the exception */ @@ -2019,10 +2084,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * G 5 id null. + * G 5 get all task id null exception test. * * @throws Exception the exception */ @@ -2047,11 +2113,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * G 6 get node does not exits all task normal test. "abd" + * G 6 get all task id "abd" exception test. * * @throws Exception the exception */ @@ -2079,14 +2146,93 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { ) { Assert.assertNotNull(taskData); Assert.assertNotNull(taskData.getId()); - Assert.assertNotNull(taskData.getStatus()); - Assert.assertNotNull(taskData.getMessage()); Assert.assertEquals(Long.valueOf(taskData.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); - Assert.assertNotNull(taskData.getTaskArray()); + Assert.assertEquals(taskData.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); } } } + /** + * G 7 get all task array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void g7_getAllTaskArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/all_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * G 8 get all task Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void g8_getAllTaskArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/all_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); + + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getCurrentStatus()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } /** * H 1 get node list normal test. "abd" From 9cb6dea00c6d956ca52492a2aafba2d7de37cf2d Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 9 Jun 2020 17:42:30 +0800 Subject: [PATCH 08/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E8=83=BD=E5=8A=9B=E8=8A=82=E7=82=B9=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E5=92=8C=E8=AF=A6=E7=BB=86=E4=BF=A1=E6=81=AF=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83?= =?UTF-8?q?=E7=B4=A0=E4=B8=BAnull=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8?= =?UTF-8?q?=E4=BE=8B=202.=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E8=83=BD?= =?UTF-8?q?=E5=8A=9B=E8=8A=82=E7=82=B9=E5=88=97=E8=A1=A8=E5=92=8C=E8=AF=A6?= =?UTF-8?q?=E7=BB=86=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83=E7=B4=A0=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E5=AD=97=E7=AC=A6=E4=B8=B2=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 328 ++++++++++++------ 1 file changed, 231 insertions(+), 97 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 7b04f54f..79d6ef41 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -2258,19 +2258,17 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (DisposeNodeData disposeNodeData : rspInfo.getItems() - ) { - Assert.assertNotNull(disposeNodeData); - Assert.assertNotNull(disposeNodeData.getId()); - Assert.assertNotNull(String.valueOf(disposeNodeData.getType())); - Assert.assertNotNull(disposeNodeData.getName()); - Assert.assertNotNull(disposeNodeData.getIp()); - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); - Assert.assertEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } - } + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getName()); + Assert.assertNotNull(v.getIp()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }); } @@ -2298,24 +2296,23 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (DisposeNodeData disposeNodeData : rspInfo.getItems() - ) { - Assert.assertNotNull(disposeNodeData); - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - if (disposeNodeData.getStatus() == 0) { - Assert.assertEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(disposeNodeData.getId()); - Assert.assertNotNull(String.valueOf(disposeNodeData.getType())); - Assert.assertNotNull(disposeNodeData.getName()); - Assert.assertNotNull(disposeNodeData.getIp()); - } else { - Assert.assertNotEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getName()); + Assert.assertNotNull(v.getIp()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } @@ -2343,28 +2340,27 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (DisposeNodeData disposeNodeData : rspInfo.getItems() - ) { - Assert.assertNotNull(disposeNodeData); - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - if (disposeNodeData.getStatus() == 0) { - Assert.assertEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(disposeNodeData.getId()); - Assert.assertNotNull(String.valueOf(disposeNodeData.getType())); - Assert.assertNotNull(disposeNodeData.getName()); - Assert.assertNotNull(disposeNodeData.getIp()); - } else { - Assert.assertNotEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getName()); + Assert.assertNotNull(v.getIp()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } /** - * H 4 msgContent empty 目前默认这种情况是允许的,获取所有节点列表信息 + * H 4 get node list msgContent empty exception test. * * @throws Exception the exception */ @@ -2389,11 +2385,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** - * H 5 msgContent null 目前默认这种情况是允许的,获取所有节点列表信息 + * H 5 get node list msgContent null exception test. * * @throws Exception the exception */ @@ -2421,7 +2418,7 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * H 6 id null 不允许 + * H 6 get node list id null exception test. * * @throws Exception the exception */ @@ -2446,10 +2443,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** - * H 7 id "abd" + * H 7 get node list id "abd" exception test. * * @throws Exception the exception */ @@ -2481,6 +2479,74 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + + /** + * H 8 get node list array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void h8_getNodeListArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_list") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * H 9 get node list Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void h9_getNodeListArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_list") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getName()); + Assert.assertNotNull(v.getIp()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }); + } + + /** * I 1 get multiple Node Details Normal Test. * @@ -2505,31 +2571,29 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (DisposeNodeData disposeNodeData : rspInfo.getItems() - ) { - Assert.assertNotNull(disposeNodeData); - if (disposeNodeData.getStatus() == 0) { - Assert.assertNotNull(disposeNodeData.getId()); - Assert.assertNotNull(String.valueOf(disposeNodeData.getType())); - Assert.assertNotNull(disposeNodeData.getIp()); - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); - Assert.assertEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - Assert.assertNotNull(disposeNodeData.getCapacity()); - for (DisposeCapacity disposeCapacity : disposeNodeData.getCapacity() - ) { - Assert.assertNotNull(disposeCapacity.getType()); - Assert.assertNotNull(disposeCapacity.getDisposeIp()); - } - } else { - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); - Assert.assertNotEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + if (v.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getIp()); + Assert.assertNotNull(v.getCapacity()); + for (DisposeCapacity disposeCapacity : v.getCapacity() + ) { + Assert.assertNotNull(disposeCapacity.getType()); + Assert.assertNotNull(disposeCapacity.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } /** @@ -2556,31 +2620,29 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); Assert.assertNotNull(rspInfo); - if (rspInfo.getItems().size() > 0) { - for (DisposeNodeData disposeNodeData : rspInfo.getItems() - ) { - Assert.assertNotNull(disposeNodeData); - if (disposeNodeData.getStatus() == 0) { - Assert.assertNotNull(disposeNodeData.getId()); - Assert.assertNotNull(String.valueOf(disposeNodeData.getType())); - Assert.assertNotNull(disposeNodeData.getIp()); - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); - Assert.assertEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - Assert.assertNotNull(disposeNodeData.getCapacity()); - for (DisposeCapacity disposeCapacity : disposeNodeData.getCapacity() - ) { - Assert.assertNotNull(disposeCapacity.getType()); - Assert.assertNotNull(disposeCapacity.getDisposeIp()); - } - } else { - Assert.assertNotNull(disposeNodeData.getStatus()); - Assert.assertNotNull(disposeNodeData.getMessage()); - Assert.assertNotEquals(Long.valueOf(disposeNodeData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + if (v.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getIp()); + Assert.assertNotNull(v.getCapacity()); + for (DisposeCapacity disposeCapacity : v.getCapacity() + ) { + Assert.assertNotNull(disposeCapacity.getType()); + Assert.assertNotNull(disposeCapacity.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } - } + }); } @@ -2613,12 +2675,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * I 3 id null. + * I 4 get node details id null exception test. * * @throws Exception the exception */ @Test - public void i3_getNodeDetailsNullIdExceptionTest() throws Exception { + public void i4_getNodeDetailsNullIdExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504,\"msgContent\":" + "\"{\\\"id\\\":null}\"}"; @@ -2643,12 +2705,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { /** - * I 4 id "abd". + * I 5 get node details id "abd" exception test. * * @throws Exception the exception */ @Test - public void i4_getNodeDetailsErrorIdExceptionTest() throws Exception { + public void i5_getNodeDetailsErrorIdExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504,\"msgContent\":" + "\"{\\\"id\\\":[\\\"abd\\\"]}\"}"; @@ -2675,6 +2737,78 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * I 6 get node details array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void i6_getNodeDetailsArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_details") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * I 7 get node details Array contains empty string exception test. + * + * @throws Exception the exception + */ + @Test + public void i7_getNodeDetailsArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_details") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getIp()); + + Assert.assertNotNull(v.getCapacity()); + for (DisposeCapacity disposeCapacity : v.getCapacity() + ) { + Assert.assertNotNull(disposeCapacity.getType()); + Assert.assertNotNull(disposeCapacity.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }); + } /** * Verify device id exists boolean. From 53e06a7924160854009a74f811abaa2d3e4d39b6 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 10:55:09 +0800 Subject: [PATCH 09/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=81=9C=E6=AD=A2=E6=8C=87=E5=AE=9A=E5=A4=84=E7=BD=AE=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3=E4=B8=ADtaskId=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83=E7=B4=A0=E4=B8=BAnull?= =?UTF-8?q?=E6=88=96=E8=80=85=E7=A9=BA=E5=AD=97=E7=AC=A6=E4=B8=B2=E7=9A=84?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=EF=BC=8C=E8=BF=99=E4=B8=A4?= =?UTF-8?q?=E7=A7=8D=E6=83=85=E5=86=B5=E9=83=BD=E4=B8=8D=E5=85=81=E8=AE=B8?= =?UTF-8?q?=EF=BC=8C=E5=B1=9E=E4=BA=8E=E5=8F=82=E6=95=B0=E9=94=99=E8=AF=AF?= =?UTF-8?q?=202.=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E6=8C=87=E5=AE=9A?= =?UTF-8?q?=E8=83=BD=E5=8A=9B=E8=8A=82=E7=82=B9=E5=A4=84=E7=BD=AE=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E4=B8=ADid?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98=E5=9C=A8=E5=85=83=E7=B4=A0?= =?UTF-8?q?=E4=B8=BAnull=E6=88=96=E8=80=85=E4=B8=BA=E7=A9=BA=E5=AD=97?= =?UTF-8?q?=E7=AC=A6=E4=B8=B2=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= =?UTF-8?q?=EF=BC=8C=E4=B8=BAnull=E7=9A=84=E8=AF=9D=E5=88=99=E8=AF=A5?= =?UTF-8?q?=E6=95=B0=E7=BB=84=E5=80=BC=E4=B8=BAnull=EF=BC=8C=E5=8F=AA?= =?UTF-8?q?=E8=A6=81=E4=B8=80=E4=B8=AA=E5=85=83=E7=B4=A0=E4=B8=BA=E7=A9=BA?= =?UTF-8?q?=E5=AD=97=E7=AC=A6=E4=B8=B2=EF=BC=8Cid=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E5=80=BC=E5=B0=B1=E4=BD=8D=E7=A9=BA=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=203.=20=E5=A2=9E=E5=8A=A0=E8=8E=B7=E5=8F=96=E5=A4=84=E7=BD=AE?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=AF=A6=E7=BB=86=E4=BF=A1=E6=81=AF=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E4=B8=ADid=E6=95=B0=E7=BB=84=E4=B8=AD=E5=AD=98?= =?UTF-8?q?=E5=9C=A8=E5=85=83=E7=B4=A0=E4=B8=BAnull=E6=88=96=E8=80=85?= =?UTF-8?q?=E4=B8=BA=E7=A9=BA=E5=AD=97=E7=AC=A6=E4=B8=B2=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B=EF=BC=8C=E5=90=8C2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/TaskControllerQATest.java | 201 +++++++++++++++++- 1 file changed, 200 insertions(+), 1 deletion(-) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index e77fbc5e..fdae1792 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -401,6 +401,65 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); } + /** + * b3 stop task array contains null exception test. + * + * @throws Exception the exception + */ + @Test + public void b3_stopTaskArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"123\\\", null]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * b4 stop task Array contains empty string exception test. taskId如果是空字符串,则参数错误 + * + * @throws Exception the exception + */ + @Test + public void b4_stopTaskArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** * c1 id null exception test. * @@ -1063,7 +1122,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * id empty test.空字符串表示所有能力节点 + * id empty test.空表示所有能力节点 */ @Test public void f2_NormalGetNodeTaskInfoIdTest() throws Exception { @@ -1162,6 +1221,85 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); } + + /** + * f5 get node task Array contains null exception test .数组中有一个元素为null 参数错误 + */ + @Test + public void f5_GetNodeTaskInfoArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": [\\\"1\\\", null]," + + "\\\"type\\\":0}\"}"; + + String NodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get_node") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(NodeTaskInfo), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * get node task Array contains empty string exception test .数组中有一个元素为空字符串表示所有能力节点 + */ + @Test + public void f6_GetNodeTaskInfoArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": " + + "[\\\"1\\\",\\\"2\\\",\\\"\\\"], \\\"type\\\":0}\"}"; + + String getNodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get_node") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(getNodeTaskInfo), NodeTaskRsp.class); + + Assert.assertNotNull(nodeTaskRsp); + nodeTaskRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getTaskArray()); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (v.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } else if (v.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + }); + } + + /** * taskId empty test. 空字符串表示所有节点任务 */ @@ -1221,4 +1359,65 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); } + + /** + * g3 get node detailed info Array contains null exception test .数组中有一个元素为null 参数错误 + */ + @Test + public void g3_GetNodeDetailedInfoArrayContainsNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", null]}\"}"; + + String getNodeDetailedInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(getNodeDetailedInfo), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + + /** + * g4 get node task Array contains empty string exception test .数组中有一个元素为空字符串表示所有能力节点 + */ + @Test + public void g4_GetNodeDetailedInfoArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; + + String getNodeDetailedInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(getNodeDetailedInfo), TaskInfoRsp.class); + + List taskInfoList = startTaskRsp.getItems(); + for (TaskInfoData task : taskInfoList + ) { + Assert.assertNotNull(task.getId()); + Assert.assertNotNull(task.getTaskId()); + Assert.assertNotNull(task.getStartTime()); + Assert.assertNotNull(task.getDisposeTime()); + Assert.assertNotNull(task.getStatus()); + Assert.assertNotNull(task.getMessage()); + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + } + } } From 6309a7135e14ea09e7f0550cd22de9de237c3512 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 11:45:23 +0800 Subject: [PATCH 10/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/TaskControllerQATest.java | 398 ++++++++++-------- 1 file changed, 219 insertions(+), 179 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index fdae1792..f5463832 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -5,7 +5,6 @@ import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.common.TaskInfoData; -import com.dispose.pojo.vo.information.NodeTaskData; import com.dispose.pojo.vo.information.NodeTaskRsp; import com.dispose.pojo.vo.task.StartTaskRsp; import com.dispose.pojo.vo.task.TaskInfoRsp; @@ -60,7 +59,7 @@ public class TaskControllerQATest extends InitTestEnvironment { "\\\"disposeTime\\\":120, \\\"flowDirection\\\":2, \\\"attackType\\\":[0], " + "\\\"flowBandwidth\\\":1024}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -71,7 +70,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(taskStart), StartTaskRsp.class); + StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), StartTaskRsp.class); Assert.assertNotNull(startTaskRsp); Assert.assertNotNull(startTaskRsp.getStatus()); @@ -82,8 +81,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(startTaskRsp.getId()); Assert.assertNotNull(startTaskRsp.getTaskId()); Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else if (startTaskRsp.getStatus() == 26) { Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_TASKRUNNING.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_TASKRUNNING.getMsg()); } } @@ -93,11 +94,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a2_startTaskNoDisPoseIpExceptionTest() throws Exception { + public void a2_startTaskDisPoseIpEmptyExceptionTest() throws Exception { String reqDataNoIp = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"\\\", \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -108,11 +109,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -121,12 +123,12 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a3_startTaskNullDisposeIpExceptionTest() throws Exception { + public void a3_startTaskDisposeIpNullExceptionTest() throws Exception { //disposeIp null String reqDataNullIp = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, \\\"disposeIp\\\":null, \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -137,11 +139,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -150,11 +153,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a4_startTaskIntegerDisposeIpExceptionTest() throws Exception { + public void a4_startTaskDisposeIpIntegerExceptionTest() throws Exception { String reqDataIntegerIp = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, \\\"disposeIp\\\":192345, \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -165,11 +168,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -178,11 +182,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a5_startTaskNullIdExceptionTest() throws Exception { + public void a5_startTaskIdNullExceptionTest() throws Exception { String reqDataNullId = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":null," + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -193,11 +197,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -206,11 +211,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a6_startTaskNoTypeExceptionTest() throws Exception { + public void a6_startTaskTypeEmptyExceptionTest() throws Exception { String reqDataNoType = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -221,11 +226,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -234,11 +240,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a7_startTaskNullTypeExceptionTest() throws Exception { //null type + public void a7_startTaskTypeNullExceptionTest() throws Exception { //null type String reqDataNullType = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":null, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -249,11 +255,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -262,12 +269,12 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a8_startTaskNoDisposeTimeExceptionTest() throws Exception { + public void a8_startTaskDisposeTimeEmptyExceptionTest() throws Exception { //no disposeTime String reqDataNoDisposeTime = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -278,11 +285,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -291,12 +299,12 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a9_startTaskNullDisposeTimeExceptionTest() throws Exception { + public void a9_startTaskDisposeTimeNullExceptionTest() throws Exception { //null disposeTime String reqDataNullDisposeTime = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":null}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -307,13 +315,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(taskStart), StartTaskRsp.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); - Assert.assertNotNull(startTaskRsp); - Assert.assertNotNull(String.valueOf(startTaskRsp.getExpireTime())); - Assert.assertNotNull(startTaskRsp.getStatus()); - Assert.assertNotNull(startTaskRsp.getMessage()); - Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -322,12 +329,12 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void a10_startTaskStringDisposeTimeExceptionTest() throws Exception { + public void a10_startTaskDisposeTimeStringExceptionTest() throws Exception { //string disposeTime String reqDataStringDisposeTime = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":null, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":\\\"120\\\"}\"}"; - String taskStart = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/start") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -338,24 +345,25 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStart), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** - * b1 taskId empty exception test. + * b1 taskId empty exception test. 停止指定任务的时候必须指定id id不能为空字符串 * * @throws Exception the exception */ @Test - public void b1_stopTaskNoTaskIdExceptionTest() throws Exception { + public void b1_stopTaskTaskIdEmptyStringExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[\\\"\\\"]}\"}"; - String taskStop = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -366,11 +374,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStop), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -379,11 +388,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void b2_stopTaskNullTaskIdExceptionTest() throws Exception { + public void b2_stopTaskTaskIdNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":null}\"}"; - String taskStop = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -394,11 +403,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStop), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -459,18 +469,17 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } - /** * c1 id null exception test. * * @throws Exception the exception */ @Test - public void c1_stopTaskByIpNullIdExceptionTest() throws Exception { + public void c1_stopTaskByIpIdNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":null,\\\"type\\\":0,\\\"disposeIp\\\":\\\"192.168.3.4\\\"}]}\"}"; - String taskStopByIpNullId = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -481,24 +490,25 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNullId), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** - * c2 id empty exception test. + * c2 id empty exception test. id需要指定 * * @throws Exception the exception */ @Test - public void c2_stopTaskByIpNoIdExceptionTest() throws Exception { + public void c2_stopTaskByIpIdEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"\\\",\\\"type\\\":0,\\\"disposeIp\\\":\\\"192.168.3.4\\\"}]}\"}"; - String taskStopByIpNollId = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -509,11 +519,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNollId), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -522,11 +533,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c3_stopTaskByIpNoDisposeIpExceptionTest() throws Exception { + public void c3_stopTaskByIpDisposeIpEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0,\\\"disposeIp\\\":\\\"\\\"}]}\"}"; - String taskStopByIpNoDisposeIp = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -537,11 +548,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNoDisposeIp), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -550,11 +562,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c4_stopTaskByIpNullDisposeIpExceptionTest() throws Exception { + public void c4_stopTaskByIpDisposeIpNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0,\\\"disposeIp\\\":null}]}\"}"; - String taskStopByIpNullDisposeIp = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -565,11 +577,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNullDisposeIp), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -578,11 +591,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c5_stopTaskByIpErrorDisposeIpExceptionTest() throws Exception { + public void c5_stopTaskByIpDisposeIpErrorExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0,\\\"disposeIp\\\":\\\"abc\\\"}]}\"}"; - String taskStopByIpErrorDisposeIp = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -593,11 +606,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpErrorDisposeIp), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -606,11 +620,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c6_stopTaskByIpIntegerDisposeIpExceptionTest() throws Exception { + public void c6_stopTaskByIpDisposeIpIntegerExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0,\\\"disposeIp\\\":123}]}\"}"; - String taskStopByIpIntegerDisposeIp = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -621,11 +635,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpIntegerDisposeIp), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -634,11 +649,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c7_stopTaskByIpNoTypeExceptionTest() throws Exception { + public void c7_stopTaskByIpTypeEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":,\\\"disposeIp\\\":\\\"192.168.5.4\\\"}]}\"}"; - String taskStopByIpNoType = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -649,11 +664,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNoType), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -662,11 +678,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void c8_stopTaskByIpNullTypeExceptionTest() throws Exception { + public void c8_stopTaskByIpTypeNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":null,\\\"disposeIp\\\":\\\"192.168.5.4\\\"}]}\"}"; - String taskStopByIpNullType = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_ip") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -677,11 +693,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIpNullType), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -692,7 +709,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -703,7 +720,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopByNode), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -715,8 +732,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -729,7 +748,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0}, {\\\"id\\\":\\\"471\\\",\\\"type\\\":0}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -740,7 +759,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopByNode), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -752,8 +771,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -764,11 +785,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d3_stopTaskByNodeNoIdExceptionTest() throws Exception { + public void d3_stopTaskByNodeIdEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"\\\",\\\"type\\\":0}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -779,11 +800,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByNode), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -792,11 +814,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d4_stopTaskByNodeNullIdExceptionTest() throws Exception { + public void d4_stopTaskByNodeIdNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":null,\\\"type\\\":0}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -807,11 +829,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByNode), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -820,11 +843,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d5_stopTaskByNodeNoTypeExceptionTest() throws Exception { + public void d5_stopTaskByNodeTypeEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -835,11 +858,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByNode), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -848,11 +872,11 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void d6_stopTaskByNodeNullTypeExceptionTest() throws Exception { + public void d6_stopTaskByNodeTypeNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":null}]}\"}"; - String taskStopByNode = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -863,11 +887,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByNode), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -877,7 +902,7 @@ public class TaskControllerQATest extends InitTestEnvironment { public void e1_NormalStopAllTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":0}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -888,7 +913,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopAll), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -900,8 +925,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -913,7 +940,7 @@ public class TaskControllerQATest extends InitTestEnvironment { public void e2_NormalStopAllTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":1}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -924,7 +951,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopAll), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -936,13 +963,14 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } - /** * e3 stop task all test. */ @@ -950,7 +978,7 @@ public class TaskControllerQATest extends InitTestEnvironment { public void e3_NormalStopAllTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":-1}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -961,7 +989,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopAll), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -973,8 +1001,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -985,10 +1015,10 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e4_stopTaskAllNoTypeExceptionTest() throws Exception { + public void e4_stopTaskAllTypeEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -999,11 +1029,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopAll), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -1012,10 +1043,10 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e5_stopTaskAllNullTypeExceptionTest() throws Exception { + public void e5_stopTaskAllTypeNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":null}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1026,11 +1057,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopAll), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** @@ -1039,10 +1071,10 @@ public class TaskControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void e6_stopTaskAllStringTypeExceptionTest() throws Exception { + public void e6_stopTaskAllTypeStringExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":\\\"0\\\"}\"}"; - String taskStopAll = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/stop_all") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1053,7 +1085,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(taskStopAll), TaskInfoRsp.class); + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); List taskInfoList = taskStopByIpRsp.getItems(); for (TaskInfoData task : taskInfoList @@ -1065,8 +1097,10 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -1079,7 +1113,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": [\\\"1\\\",\\\"123\\\"]," + "\\\"type\\\":0}\"}"; - String getNodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1090,35 +1124,36 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; - NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(getNodeTaskInfo), NodeTaskRsp.class); + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); - List taskInfoList = nodeTaskRsp.getItems(); - for (NodeTaskData task : taskInfoList - ) { - Assert.assertNotNull(task.getStatus()); - Assert.assertNotNull(task.getMessage()); - if (task.getStatus() == 0) { - Assert.assertNotNull(task.getId()); - Assert.assertNotNull(task.getTaskArray()); + Assert.assertNotNull(nodeTaskRsp); + nodeTaskRsp.getItems().forEach(v->{ + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - for (TaskInfoData taskInfoData : task.getTaskArray() + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); + + for (TaskInfoData taskInfoData : v.getTaskArray() ) { Assert.assertNotNull(taskInfoData.getTaskId()); Assert.assertNotNull(taskInfoData.getType()); Assert.assertNotNull(taskInfoData.getStartTime()); Assert.assertNotNull(taskInfoData.getDisposeTime()); Assert.assertNotNull(taskInfoData.getDisposeIp()); - Assert.assertTrue(taskInfoData.getDisposeIp().matches(regex)); } - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } else if (task.getStatus() == 19) { - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); - } else if (task.getStatus() == 30) { - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (v.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } else if (v.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); } - } + }); } /** @@ -1129,7 +1164,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": []," + "\\\"type\\\":0}\"}"; - String getNodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1140,18 +1175,18 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(getNodeTaskInfo), NodeTaskRsp.class); + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); - List taskInfoList = nodeTaskRsp.getItems(); - for (NodeTaskData task : taskInfoList - ) { - Assert.assertNotNull(task.getStatus()); - Assert.assertNotNull(task.getMessage()); - if (task.getStatus() == 0) { - Assert.assertNotNull(task.getId()); - Assert.assertNotNull(task.getTaskArray()); + Assert.assertNotNull(nodeTaskRsp); + nodeTaskRsp.getItems().forEach(v->{ + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - for (TaskInfoData taskInfoData : task.getTaskArray() + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); + + for (TaskInfoData taskInfoData : v.getTaskArray() ) { Assert.assertNotNull(taskInfoData.getTaskId()); Assert.assertNotNull(taskInfoData.getType()); @@ -1160,24 +1195,27 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertNotNull(taskInfoData.getDisposeIp()); } - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } else if (task.getStatus() == 19) { - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); - } else if (task.getStatus() == 30) { - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (v.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } else if (v.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); } - } + }); } /** * type null test. */ @Test - public void f3_GetNodeTaskInfoNullTypeExceptionTest() throws Exception { + public void f3_GetNodeTaskInfoTypeNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": [\\\"1\\\"]," + "\\\"type\\\":null}\"}"; - String getNodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1188,22 +1226,23 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(getNodeTaskInfo), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } /** * type empty test. */ @Test - public void f4_GetNodeTaskInfoNullTypeExceptionTest() throws Exception { + public void f4_GetNodeTaskInfoTypeEmptyExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": [\\\"1\\\"]," + "\\\"type\\\":}\"}"; - String NodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1214,11 +1253,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(NodeTaskInfo), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } @@ -1230,7 +1270,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": [\\\"1\\\", null]," + "\\\"type\\\":0}\"}"; - String NodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1241,7 +1281,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(NodeTaskInfo), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); @@ -1257,7 +1297,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": " + "[\\\"1\\\",\\\"2\\\",\\\"\\\"], \\\"type\\\":0}\"}"; - String getNodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get_node") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1268,15 +1308,15 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(getNodeTaskInfo), NodeTaskRsp.class); + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); Assert.assertNotNull(nodeTaskRsp); nodeTaskRsp.getItems().forEach(v -> { - Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getTaskArray()); for (TaskInfoData taskInfoData : v.getTaskArray() ) { @@ -1299,7 +1339,6 @@ public class TaskControllerQATest extends InitTestEnvironment { }); } - /** * taskId empty test. 空字符串表示所有节点任务 */ @@ -1308,7 +1347,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[]}\"}"; - String getNodeDetailedInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1319,30 +1358,30 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(getNodeDetailedInfo), TaskInfoRsp.class); + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); - List taskInfoList = startTaskRsp.getItems(); - for (TaskInfoData task : taskInfoList - ) { - Assert.assertNotNull(task.getId()); - Assert.assertNotNull(task.getTaskId()); - Assert.assertNotNull(task.getStartTime()); - Assert.assertNotNull(task.getDisposeTime()); - Assert.assertNotNull(task.getStatus()); - Assert.assertNotNull(task.getMessage()); - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } + Assert.assertNotNull(startTaskRsp); + startTaskRsp.getItems().forEach(v->{ + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskId()); + Assert.assertNotNull(v.getStartTime()); + Assert.assertNotNull(v.getDisposeTime()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }); } /** * taskId null test. */ @Test - public void g2_GetNodeDetailedInfoNullTaskIdExceptionTest() throws Exception { + public void g2_GetNodeDetailedInfoTaskIdNullExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":null}\"}"; - String NodeTaskInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1353,11 +1392,12 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(NodeTaskInfo), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -1368,7 +1408,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", null]}\"}"; - String getNodeDetailedInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1379,7 +1419,7 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(getNodeDetailedInfo), ReturnStatus.class); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); Assert.assertNotNull(returnStatus.getStatus()); Assert.assertNotNull(returnStatus.getMessage()); @@ -1395,7 +1435,7 @@ public class TaskControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; - String getNodeDetailedInfo = mockMvc.perform(MockMvcRequestBuilders + String ret = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -1406,18 +1446,18 @@ public class TaskControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(getNodeDetailedInfo), TaskInfoRsp.class); + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); - List taskInfoList = startTaskRsp.getItems(); - for (TaskInfoData task : taskInfoList - ) { - Assert.assertNotNull(task.getId()); - Assert.assertNotNull(task.getTaskId()); - Assert.assertNotNull(task.getStartTime()); - Assert.assertNotNull(task.getDisposeTime()); - Assert.assertNotNull(task.getStatus()); - Assert.assertNotNull(task.getMessage()); - Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - } + Assert.assertNotNull(startTaskRsp); + startTaskRsp.getItems().forEach(v->{ + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskId()); + Assert.assertNotNull(v.getStartTime()); + Assert.assertNotNull(v.getDisposeTime()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }); } } From 689f1ad7a0e7cd04f31c016c9e9096a93a6ed625 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 15:06:29 +0800 Subject: [PATCH 11/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TaskControllerSmokeTest.java | 8 ++ .../test/controller/TaskControllerTest.java | 106 ++++++++++++++---- 2 files changed, 93 insertions(+), 21 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java index 7be2e0fe..76838813 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java @@ -80,8 +80,10 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { Assert.assertNotNull(startTaskRsp.getId()); Assert.assertNotNull(startTaskRsp.getTaskId()); Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else if (startTaskRsp.getStatus() == 26) { Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_TASKRUNNING.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_TASKRUNNING.getMsg()); } } @@ -113,8 +115,10 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else if (task.getStatus() == 30) { Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); } } } @@ -147,8 +151,10 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else if (task.getStatus() == 30) { Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); } } } @@ -183,8 +189,10 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { Assert.assertNotNull(task.getStartTime()); Assert.assertNotNull(task.getDisposeTime()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else if (task.getStatus() == 30) { Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); } } } diff --git a/src/test/java/com/dispose/test/controller/TaskControllerTest.java b/src/test/java/com/dispose/test/controller/TaskControllerTest.java index 859eb44c..8b4fb015 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerTest.java @@ -162,10 +162,11 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(startTaskRsp.getId()); Assert.assertNotNull(startTaskRsp.getTaskId()); Assert.assertNotNull(String.valueOf(startTaskRsp.getExpireTime())); - Assert.assertNotEquals(String.valueOf(startTaskRsp.getExpireTime()), -1); Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } } @@ -216,8 +217,10 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -267,8 +270,10 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -329,8 +334,10 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -387,8 +394,10 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -445,12 +454,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -513,12 +523,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -575,12 +586,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -633,12 +645,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -687,12 +700,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -739,12 +753,13 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getMessage()); if (task.getStatus() == ErrorCode.ERR_OK.getCode()) { - Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); - Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(task.getId()); Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals((int) task.getStatus(), ErrorCode.ERR_OK.getCode()); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -780,7 +795,6 @@ public class TaskControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(getTask, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -804,13 +818,14 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getStartTime()); Assert.assertNotNull(task.getStartTime()); Assert.assertNotNull(task.getDisposeIp()); - Assert.assertTrue(task.getDisposeIp().matches(regex)); } } Assert.assertEquals(Long.valueOf(taskNode.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(taskNode.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(taskNode.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(taskNode.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -844,7 +859,6 @@ public class TaskControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(getTask, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -868,13 +882,14 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getStartTime()); Assert.assertNotNull(task.getStartTime()); Assert.assertNotNull(task.getDisposeIp()); - Assert.assertTrue(task.getDisposeIp().matches(regex)); } } Assert.assertEquals(Long.valueOf(taskNode.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(taskNode.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(taskNode.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(taskNode.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -890,13 +905,14 @@ public class TaskControllerTest extends InitTestEnvironment { .taskId(new String[]{String.valueOf(getExistsTaskId()), "123"}) .build(); + Long reqTimeStamp = System.currentTimeMillis(); ProtocolReqDTO reqInfo = new ProtocolReqDTO(); reqInfo.setVer(ConstValue.Protocol.VERSION); reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); - reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setTimeStamp(reqTimeStamp); reqInfo.setMsgContent(objectMapper.writeValueAsString(reqData)); - mockMvc.perform(MockMvcRequestBuilders + String getTask = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -906,6 +922,32 @@ public class TaskControllerTest extends InitTestEnvironment { .andReturn() .getResponse() .getContentAsString(); + + String msgContent = verifyRep(getTask, reqTimeStamp); + System.out.print("msgContent=" + msgContent); + + //将json字符串转为TaskInfoRsp类 + TaskInfoRsp taskInfoRsp = objectMapper.readValue(msgContent, TaskInfoRsp.class); + + List taskInfoList = taskInfoRsp.getItems(); + for (TaskInfoData taskInfoData : taskInfoList + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getStatus()); + Assert.assertNotNull(taskInfoData.getMessage()); + + if (taskInfoData.getStatus() == 0) { + Assert.assertNotNull(taskInfoData.getId()); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertEquals(Long.valueOf(taskInfoData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(taskInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (taskInfoData.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(taskInfoData.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(taskInfoData.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + } } /** @@ -919,13 +961,14 @@ public class TaskControllerTest extends InitTestEnvironment { .taskId(new String[]{}) .build(); + Long reqTimeStamp = System.currentTimeMillis(); ProtocolReqDTO reqInfo = new ProtocolReqDTO(); reqInfo.setVer(ConstValue.Protocol.VERSION); reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); - reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setTimeStamp(reqTimeStamp); reqInfo.setMsgContent(objectMapper.writeValueAsString(reqData)); - mockMvc.perform(MockMvcRequestBuilders + String getTask = mockMvc.perform(MockMvcRequestBuilders .post("/task/get") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) @@ -935,8 +978,29 @@ public class TaskControllerTest extends InitTestEnvironment { .andReturn() .getResponse() .getContentAsString(); + + String msgContent = verifyRep(getTask, reqTimeStamp); + System.out.print("msgContent=" + msgContent); + + //将json字符串转为TaskInfoRsp类 + TaskInfoRsp taskInfoRsp = objectMapper.readValue(msgContent, TaskInfoRsp.class); + + List taskInfoList = taskInfoRsp.getItems(); + for (TaskInfoData taskInfoData : taskInfoList + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getId()); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getStatus()); + Assert.assertNotNull(taskInfoData.getMessage()); + Assert.assertEquals(Long.valueOf(taskInfoData.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(taskInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } } + /** * T 8 add task error test. */ From 9b524493593020020fa13ead0109262eff0afd7d Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 15:54:20 +0800 Subject: [PATCH 12/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E5=81=9C=E6=AD=A2=E6=8C=87=E5=AE=9A=E5=A4=84=E7=BD=AE=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3=E3=80=81=E8=8E=B7=E5=8F=96=E6=8C=87?= =?UTF-8?q?=E5=AE=9A=E8=83=BD=E5=8A=9B=E8=8A=82=E7=82=B9=E5=A4=84=E7=BD=AE?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=88=97=E8=A1=A8=E6=8E=A5=E5=8F=A3=E5=92=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E8=AF=A6?= =?UTF-8?q?=E7=BB=86=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E4=B8=AD=E5=85=A5?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E7=BB=84=E9=87=8D=E5=A4=8D=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B=EF=BC=8C=E7=BB=93=E6=9E=9C=E5=8E=BB?= =?UTF-8?q?=E9=87=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/TaskControllerQATest.java | 144 +++++++++++++++++- 1 file changed, 137 insertions(+), 7 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index f5463832..4102cd40 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -469,6 +469,47 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } + /** + * b5 stop task Array contains repeated elements test. 去重 + * + * @throws Exception the exception + */ + @Test + public void b5_stopTaskArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); + List taskInfoList = startTaskRsp.getItems(); + for (TaskInfoData task : taskInfoList + ) { + Assert.assertNotNull(task.getStatus()); + Assert.assertNotNull(task.getMessage()); + + if (task.getStatus() == 0) { + Assert.assertNotNull(task.getId()); + Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (task.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + } + } + + /** * c1 id null exception test. * @@ -1106,7 +1147,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * f1 get task information of node test. + * f1 get node task of node test. */ @Test public void f1_NormalGetNodeTaskInfoTest() throws Exception { @@ -1157,7 +1198,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * id empty test.空表示所有能力节点 + *f2 get node task id empty exception test.空表示所有能力节点 */ @Test public void f2_NormalGetNodeTaskInfoIdTest() throws Exception { @@ -1208,7 +1249,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * type null test. + * f3 get node task type null exception test. */ @Test public void f3_GetNodeTaskInfoTypeNullExceptionTest() throws Exception { @@ -1235,7 +1276,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * type empty test. + * f4 get node task type empty exception test. */ @Test public void f4_GetNodeTaskInfoTypeEmptyExceptionTest() throws Exception { @@ -1290,7 +1331,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * get node task Array contains empty string exception test .数组中有一个元素为空字符串表示所有能力节点 + * f6 get node task Array contains empty string exception test .数组中有一个元素为空字符串表示所有能力节点 */ @Test public void f6_GetNodeTaskInfoArrayContainsEmptyStringExceptionTest() throws Exception { @@ -1339,8 +1380,56 @@ public class TaskControllerQATest extends InitTestEnvironment { }); } + /** - * taskId empty test. 空字符串表示所有节点任务 + * f7 get node task Array contains Array contains repeated elements test . 结果去重 + */ + @Test + public void f7_GetNodeTaskInfoArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": " + + "[\\\"1\\\",\\\"1\\\",\\\"123\\\"], \\\"type\\\":0}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get_node") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(nodeTaskRsp); + nodeTaskRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getTaskArray()); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (v.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + }); + } + + /** + * g1 get node detailed taskId empty exception test. 空字符串表示所有节点任务 */ @Test public void g1_NormalGetNodeDetailedInfoTest() throws Exception { @@ -1374,7 +1463,7 @@ public class TaskControllerQATest extends InitTestEnvironment { } /** - * taskId null test. + * g2 get node detailed taskId null exception test . */ @Test public void g2_GetNodeDetailedInfoTaskIdNullExceptionTest() throws Exception { @@ -1460,4 +1549,45 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); }); } + + /** + * g5 get node task Array contains Array contains repeated elements test . + */ + @Test + public void g5_GetNodeDetailedInfoArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); + + Assert.assertNotNull(startTaskRsp); + startTaskRsp.getItems().forEach(v->{ + Assert.assertNotNull(v); + Assert.assertNotNull(v.getTaskId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if(v.getStatus() == 0){ + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStartTime()); + Assert.assertNotNull(v.getDisposeTime()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + }else if(v.getStatus() == 30){ + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + }); + } } From db6ae0f3be33cb88b2c78b71df5f30d711f6de25 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 16:57:37 +0800 Subject: [PATCH 13/59] =?UTF-8?q?OCT=20REM:=201.=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E8=83=BD=E5=8A=9B=E8=8A=82=E7=82=B9=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3=E4=B8=AD=E5=85=A5?= =?UTF-8?q?=E5=8F=82=E6=95=B0=E7=BB=84=E9=87=8D=E5=A4=8D=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B=EF=BC=8C=E7=BB=93=E6=9E=9C=E5=8E=BB?= =?UTF-8?q?=E9=87=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 485 ++++++++++++++++-- 1 file changed, 429 insertions(+), 56 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 79d6ef41..218fcc68 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -336,12 +336,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * A 9 get version Array contains empty string exception test. + * A 9 get version Array contains empty string test. * * @throws Exception the exception */ @Test - public void a9_getVersionArrayContainsEmptyStringExceptionTest() throws Exception { + public void a9_getVersionArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -368,6 +368,46 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * A 10 get version Array contains repeated elements test. 去重 + * + * @throws Exception the exception + */ + @Test + public void a10_getVersionArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + VersionListRsp versionListRsp = objectMapper.readValue(verifyResp(ver), VersionListRsp.class); + List verList = versionListRsp.getItems(); + + for (VersionRsp versionRsp : verList + ) { + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getStatus()); + Assert.assertNotNull(versionRsp.getMessage()); + + if (versionRsp.getStatus() == 0) { + Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (versionRsp.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } /** * B 1 get device info normal one exist device test. @@ -503,7 +543,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo.getMessage()); Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); - } /** @@ -625,12 +664,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * b 9 get device info Array contains empty string exception test. + * b 9 get device info Array contains empty string test. * * @throws Exception the exception */ @Test - public void b9_getDeviceInfoArrayContainsEmptyStringExceptionTest() throws Exception { + public void b9_getDeviceInfoArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -656,6 +695,46 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * B 10 get device info Array contains repeated elements exception test. + * + * @throws Exception the exception + */ + @Test + public void b10_getDeviceInfoArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\",\\\"1\\\", \\\"123\\\"]}\"}"; + + String deviceInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(200)) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceInfoRsp deviceInfoRsp = objectMapper.readValue(verifyResp(deviceInfo), DeviceInfoRsp.class); + List verList = deviceInfoRsp.getItems(); + + for (DeviceInfoData deviceInfoData : verList + ) { + Assert.assertNotNull(deviceInfoData.getId()); + Assert.assertNotNull(String.valueOf(deviceInfoData.getStatus())); + Assert.assertNotNull(deviceInfoData.getMessage()); + + if (deviceInfoData.getStatus() == 0) { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** * C 1 get link status normal one online device test. * @@ -896,7 +975,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } - /** * C 8 get link status array contains null exception test. * @@ -927,12 +1005,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * C 9 get link status Array contains empty string exception test. + * C 9 get link status Array contains empty string test. * * @throws Exception the exception */ @Test - public void c9_getLinkStatusArrayContainsEmptyStringExceptionTest() throws Exception { + public void c9_getLinkStatusArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -960,6 +1038,48 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * C 10 get link status Array contains repeated elements test. + * + * @throws Exception the exception + */ + @Test + public void c10_getLinkStatusArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\",\\\"1\\\",\\\"123\\\"]}\"}"; + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + LinkStatusListRsp linkStatusListRsp = objectMapper.readValue(verifyResp(linkstatus), LinkStatusListRsp.class); + List linkStatusRspList = linkStatusListRsp.getItems(); + + for (LinkStatusRsp linkStatusRsp : linkStatusRspList + ) { + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertNotNull(linkStatusRsp.getStatus()); + Assert.assertNotNull(linkStatusRsp.getMessage()); + + if (linkStatusRsp.getStatus() == 0) { + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "0"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } /** * d1 get one node capacity . @@ -982,11 +1102,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1000,7 +1120,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * d2 get multiple node capabilities . */ @@ -1022,11 +1141,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1040,7 +1159,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * d3 Get a node capability that does not exist . */ @@ -1062,11 +1180,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1080,7 +1198,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * d4 get capacity msgContent empty exception test. * @@ -1204,7 +1321,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } - /** * d8 get capacity id Integer exception test. * @@ -1264,12 +1380,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * D 10 get capacity Array contains empty string exception test. + * D 10 get capacity Array contains empty string test. * * @throws Exception the exception */ @Test - public void d10_getCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + public void d10_getCapacityArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -1295,6 +1411,45 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * D 11 get capacity Array contains repeated elements test. + */ + @Test + public void d11_GetMultipleNodeArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"2\\\"]}\"}"; + + String capacity = mockMvc.perform(MockMvcRequestBuilders + .post("/information/capacity") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); + deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + + if (v.getCapacity() != null) { + v.getCapacity().forEach(k -> Assert.assertNotNull(k.getType())); + } + }); + } + /** * e1 get protection IP a node protection IP that exists exception test. */ @@ -1316,11 +1471,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1358,11 +1513,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1379,7 +1534,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * e3 get a node protection IP that does not exist . */ @@ -1401,11 +1555,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { @@ -1451,7 +1605,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * e5 get protection IP msgContent null exception test. * @@ -1539,7 +1692,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * e8 get protection IP id Integer exception test. * @@ -1569,7 +1721,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * e9 get protection IP array contains null exception test. * @@ -1600,12 +1751,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * e10 get protection IP Array contains empty string exception test. + * e10 get protection IP Array contains empty string test. * * @throws Exception the exception */ @Test - public void e10_getCapacityArrayContainsEmptyStringExceptionTest() throws Exception { + public void e10_getCapacityArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -1637,6 +1788,48 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } + /** + * e11 e10 get protection IP Array contains repeated elements test. 去重 + */ + @Test + public void e11_getCapacityArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"2\\\"]}\"}"; + + String protectedIp = mockMvc.perform(MockMvcRequestBuilders + .post("/information/protected_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); + deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + + if (v.getCapacity() != null) { + v.getCapacity().forEach(k -> { + Assert.assertNotNull(k.getType()); + Assert.assertNotNull(k.getDisposeIp()); + }); + } + }); + } + /** * F 1 get multiple node run task normal test. * @@ -1663,12 +1856,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo); rspInfo.getItems().forEach(v -> { Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); - Assert.assertNotNull(v.getMessage()); - if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); - Assert.assertNotNull(v.getTaskArray()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getTaskArray()); for (TaskInfoData taskInfoData : v.getTaskArray() ) { Assert.assertNotNull(taskInfoData); @@ -1688,7 +1880,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * F 2 get Node does not exist run task normal test. * @@ -1715,12 +1906,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo); rspInfo.getItems().forEach(v -> { Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); - if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); - Assert.assertNotNull(v.getTaskArray()); + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getTaskArray()); for (TaskInfoData taskInfoData : v.getTaskArray() ) { Assert.assertNotNull(taskInfoData); @@ -1740,7 +1931,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * F 3 get running task msgContent empty exception test. * @@ -1770,7 +1960,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * F 4 get running task msgContent null exception test. * @@ -1892,12 +2081,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * F 8 get running task Array contains empty string exception test. + * F 8 get running task Array contains empty string test. * * @throws Exception the exception */ @Test - public void f8_getRunTaskArrayContainsEmptyStringExceptionTest() throws Exception { + public void f8_getRunTaskArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -1942,6 +2131,57 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } + /** + * F 9 get running task Array contains repeated elements test. + * + * @throws Exception the exception + */ + @Test + public void f9_getRunTaskArrayContainsEmptyStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/run_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getTaskArray()); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } + /** * G 1 get multiple node all task normal test. * @@ -1995,7 +2235,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * G 2 get node does not exits all task normal test. * @@ -2057,7 +2296,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * G 4 get all msgContent null exception test. * @@ -2116,7 +2354,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * G 6 get all task id "abd" exception test. * @@ -2182,12 +2419,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * G 8 get all task Array contains empty string exception test. + * G 8 get all task Array contains empty string test. * * @throws Exception the exception */ @Test - public void g8_getAllTaskArrayContainsEmptyStringExceptionTest() throws Exception { + public void g8_getAllTaskArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -2207,13 +2444,64 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo); rspInfo.getItems().forEach(v -> { Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getTaskArray()); + for (TaskInfoData taskInfoData : v.getTaskArray() + ) { + Assert.assertNotNull(taskInfoData); + Assert.assertNotNull(taskInfoData.getTaskId()); + Assert.assertNotNull(taskInfoData.getCurrentStatus()); + Assert.assertNotNull(taskInfoData.getType()); + Assert.assertNotNull(taskInfoData.getStartTime()); + Assert.assertNotNull(taskInfoData.getDisposeTime()); + Assert.assertNotNull(taskInfoData.getDisposeIp()); + } + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } + + /** + * G 9 get all task Array contains repeated elements test. + * + * @throws Exception the exception + */ + @Test + public void g9_getAllTaskArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/all_task") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp rspInfo = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(v.getTaskArray()); for (TaskInfoData taskInfoData : v.getTaskArray() ) { Assert.assertNotNull(taskInfoData); @@ -2271,7 +2559,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * H 2 get multiple node list normal test. "abd" * @@ -2298,11 +2585,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo); rspInfo.getItems().forEach(v -> { Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertNotNull(String.valueOf(v.getType())); Assert.assertNotNull(v.getName()); Assert.assertNotNull(v.getIp()); @@ -2315,7 +2602,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * H 3 get node does not exits list normal test. "abd" * @@ -2342,11 +2628,11 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertNotNull(rspInfo); rspInfo.getItems().forEach(v -> { Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); Assert.assertNotNull(v.getStatus()); Assert.assertNotNull(v.getMessage()); if (v.getStatus() == 0) { - Assert.assertNotNull(v.getId()); Assert.assertNotNull(String.valueOf(v.getType())); Assert.assertNotNull(v.getName()); Assert.assertNotNull(v.getIp()); @@ -2388,7 +2674,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } - /** * H 5 get node list msgContent null exception test. * @@ -2479,7 +2764,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } - /** * H 8 get node list array contains null exception test. * @@ -2510,12 +2794,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * H 9 get node list Array contains empty string exception test. + * H 9 get node list Array contains empty string test. * * @throws Exception the exception */ @Test - public void h9_getNodeListArrayContainsEmptyStringExceptionTest() throws Exception { + public void h9_getNodeListArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -2546,6 +2830,48 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } + /** + * H 10 get node list Array contains repeated elements test. + * + * @throws Exception the exception + */ + @Test + public void h9_getNodeListArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_list") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getName()); + Assert.assertNotNull(v.getIp()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } /** * I 1 get multiple Node Details Normal Test. @@ -2645,7 +2971,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } - /** * I 3 get Node does not exist Details Normal Test. * @@ -2703,7 +3028,6 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } - /** * I 5 get node details id "abd" exception test. * @@ -2767,12 +3091,12 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * I 7 get node details Array contains empty string exception test. + * I 7 get node details Array contains empty string test. * * @throws Exception the exception */ @Test - public void i7_getNodeDetailsArrayContainsEmptyStringExceptionTest() throws Exception { + public void i7_getNodeDetailsArrayContainsEmptyStringTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"123\\\", \\\"\\\"]}\"}"; @@ -2810,6 +3134,55 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { }); } + /** + * I 8 get node details Array contains repeated elements test. + * + * @throws Exception the exception + */ + @Test + public void i8_getNodeDetailsArrayContainsRepeatedElementsTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504,\"msgContent\":" + + "\"{\\\"id\\\":[\\\"1\\\", \\\"1\\\", \\\"123\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/node_details") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DisposeNodeListRsp rspInfo = objectMapper.readValue(verifyResp(ret), DisposeNodeListRsp.class); + + Assert.assertNotNull(rspInfo); + rspInfo.getItems().forEach(v -> { + Assert.assertNotNull(v); + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + + if (v.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(v.getType())); + Assert.assertNotNull(v.getIp()); + Assert.assertNotNull(v.getCapacity()); + for (DisposeCapacity disposeCapacity : v.getCapacity() + ) { + Assert.assertNotNull(disposeCapacity.getType()); + Assert.assertNotNull(disposeCapacity.getDisposeIp()); + } + + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + }); + } + /** * Verify device id exists boolean. * From aaccebede262b61233bc89b44e44b4dbc883f5ae Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 10 Jun 2020 18:03:32 +0800 Subject: [PATCH 14/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 59 +++-- .../DeviceNodeInfoControllerTest.java | 248 ++++++++++++------ 2 files changed, 206 insertions(+), 101 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 218fcc68..5b4ed42b 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -1322,14 +1322,14 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * d8 get capacity id Integer exception test. + * d8 get capacity id Integer exception test.该情况不能做判断 数组内部的类型 * * @throws Exception the exception */ @Test public void d8_getCapacityIntegerIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + - "\"msgContent\":\"{\\\"id\\\":1}\"}"; + "\"msgContent\":\"{\\\"id\\\":[1, 2]}\"}"; String capacity = mockMvc.perform(MockMvcRequestBuilders .post("/information/capacity") @@ -1337,17 +1337,29 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(capacity), ReturnStatus.class); + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(capacity), DeviceCapacityRsp.class); + deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - Assert.assertNotNull(returnStatus.getStatus()); - Assert.assertNotNull(returnStatus.getMessage()); - Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); - Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + if (v.getStatus() == 0) { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + + if (v.getCapacity() != null) { + v.getCapacity().forEach(k -> Assert.assertNotNull(k.getType())); + } + }); } /** @@ -1693,14 +1705,14 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } /** - * e8 get protection IP id Integer exception test. + * e8 get protection IP id Integer exception test. 数组内"1"和1 不能做判断 * * @throws Exception the exception */ @Test public void e8_getIpIntegerIdExistExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604310504," + - "\"msgContent\":\"{\\\"id\\\":1}\"}"; + "\"msgContent\":\"{\\\"id\\\":[1, 2]}\"}"; String protectedIp = mockMvc.perform(MockMvcRequestBuilders .post("/information/protected_ip") @@ -1708,17 +1720,32 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); - ReturnStatus returnStatus = objectMapper.readValue(verifyResp(protectedIp), ReturnStatus.class); + DeviceCapacityRsp deviceCapacityRsp = objectMapper.readValue(verifyResp(protectedIp), DeviceCapacityRsp.class); + deviceCapacityRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getId()); + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); - Assert.assertNotNull(returnStatus.getStatus()); - Assert.assertNotNull(returnStatus.getMessage()); - Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); - Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + if (v.getStatus() == 0) { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(v.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + + if (v.getCapacity() != null) { + v.getCapacity().forEach(k -> { + Assert.assertNotNull(k.getType()); + Assert.assertNotNull(k.getDisposeIp()); + }); + } + }); } /** diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java index 851c9ccb..f449b81f 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java @@ -160,12 +160,18 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { for (VersionRsp versionRsp : verList ) { + Assert.assertNotNull(versionRsp); + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getStatus()); + Assert.assertNotNull(versionRsp.getMessage()); + if (verifyDeviceIdExists(versionRsp.getId())) { - Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(versionRsp.getId()); Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -208,17 +214,22 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { for (VersionRsp versionRsp : verList ) { + Assert.assertNotNull(versionRsp); + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getStatus()); + Assert.assertNotNull(versionRsp.getMessage()); + if (verifyDeviceIdExists(versionRsp.getId())) { - Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(versionRsp.getId()); Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { Assert.assertNotEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } - /** * T 2 get device info. * @@ -257,17 +268,21 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceInfoList = deviceInfoRsp.getItems(); for (DeviceInfoData d : deviceInfoList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } - /** * T 2 get device info all. * @@ -306,17 +321,21 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceInfoList = deviceInfoRsp.getItems(); for (DeviceInfoData d : deviceInfoList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } - /** * T 3 get device capacity. * @@ -355,18 +374,24 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceCapacityList = deviceCapacityRsp.getItems(); for (DeviceCapacityData d : deviceCapacityList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - if (d.getCapacity().size() != 0) { + if (d.getCapacity().size() > 0) { for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -410,18 +435,24 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceCapacityList = deviceCapacityRsp.getItems(); for (DeviceCapacityData d : deviceCapacityList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - if (d.getCapacity().size() != 0) { + if (d.getCapacity().size() > 0) { for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -455,7 +486,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - //String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(protectedIp, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -465,23 +495,25 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceCapacityList = deviceCapacityRsp.getItems(); for (DeviceCapacityData d : deviceCapacityList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - if (d.getCapacity().size() != 0) { + if (d.getCapacity().size() > 0) { for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); Assert.assertNotNull(cap.getDisposeIp()); - //String[] disposeIps = cap.getDisposeIp().split(","); - //for (String disposeIp : disposeIps) { - //Assert.assertTrue(disposeIp.matches(regex)); - //} } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -515,7 +547,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - //String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(protectedIpAll, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -525,28 +556,29 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List deviceCapacityList = deviceCapacityRsp.getItems(); for (DeviceCapacityData d : deviceCapacityList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - if (d.getCapacity().size() != 0) { + if (d.getCapacity().size() > 0) { for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); Assert.assertNotNull(cap.getDisposeIp()); - //String[] disposeIps = cap.getDisposeIp().split(","); - //for (String disposeIp : disposeIps) { - //Assert.assertTrue(disposeIp.matches(regex)); - //} } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } - /** * T 3 get dispose node list. * @@ -576,7 +608,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(nodeList, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -586,16 +617,20 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List disposeNodeDataList = disposeNodeListRsp.getItems(); for (DisposeNodeData d : disposeNodeDataList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotNull(String.valueOf(d.getType())); Assert.assertNotNull(d.getIp()); - Assert.assertTrue(d.getIp().matches(regex)); Assert.assertNotNull(d.getName()); + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -629,7 +664,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(nodeListAll, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -639,16 +673,20 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List disposeNodeDataList = disposeNodeListRsp.getItems(); for (DisposeNodeData d : disposeNodeDataList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotNull(String.valueOf(d.getType())); Assert.assertNotNull(d.getIp()); - Assert.assertTrue(d.getIp().matches(regex)); Assert.assertNotNull(d.getName()); + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -682,7 +720,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(disposeNodeDetails, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -692,21 +729,26 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List disposeNodeDataList = nodeDetailsRsp.getItems(); for (DisposeNodeData d : disposeNodeDataList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotNull(String.valueOf(d.getType())); Assert.assertNotNull(d.getIp()); - Assert.assertTrue(d.getIp().matches(regex)); Assert.assertNotNull(d.getName()); for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); Assert.assertNotNull(cap.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -740,7 +782,6 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { .getResponse() .getContentAsString(); - String regex = "\\A(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)(\\.(25[0-5]|2[0-4]\\d|[0-1]?\\d?\\d)){3}\\z"; String msgContent = verifyRep(disposeNodeDetailsAll, reqTimeStamp); System.out.print("msgContent=" + msgContent); @@ -750,21 +791,26 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List disposeNodeDataList = nodeDetailsRsp.getItems(); for (DisposeNodeData d : disposeNodeDataList ) { + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotNull(String.valueOf(d.getType())); Assert.assertNotNull(d.getIp()); - Assert.assertTrue(d.getIp().matches(regex)); Assert.assertNotNull(d.getName()); for (DisposeCapacity cap : d.getCapacity() ) { Assert.assertNotNull(cap.getType()); Assert.assertNotNull(cap.getDisposeIp()); } + + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -796,21 +842,25 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { String msgContent = verifyRep(linkstatus, reqTimeStamp); System.out.print("msgContent=" + msgContent); -// List linkStatusList = objectMapper.readValue(msgContent, new TypeReference>() { -// }); LinkStatusListRsp linkStatusListRsp = objectMapper.readValue(msgContent, LinkStatusListRsp.class); List linkStatusList = linkStatusListRsp.getItems(); for (LinkStatusRsp linkStatusRsp : linkStatusList ) { + Assert.assertNotNull(linkStatusRsp); + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getStatus())); + Assert.assertNotNull(linkStatusRsp.getMessage()); + if (verifyDeviceIdExists(linkStatusRsp.getId())) { - Assert.assertEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(linkStatusRsp.getId()); - Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "0"); + Assert.assertNotEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -850,14 +900,20 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { for (LinkStatusRsp linkStatusRsp : linkStatusList ) { + Assert.assertNotNull(linkStatusRsp); + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getStatus())); + Assert.assertNotNull(linkStatusRsp.getMessage()); + if (verifyDeviceIdExists(linkStatusRsp.getId())) { - Assert.assertEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(linkStatusRsp.getId()); - Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } else { - Assert.assertNotEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "0"); + Assert.assertNotEquals(Long.valueOf(linkStatusRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -894,15 +950,19 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List nodeTaskData = runTaskRsp.getItems(); for (NodeTaskData d : nodeTaskData ) { - if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { // no task if (d.getTaskArray().size() == 0) { Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); } else { Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); } + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(d.getTaskArray()); for (TaskInfoData task : d.getTaskArray() @@ -913,9 +973,10 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getDisposeTime()); Assert.assertNotNull(task.getDisposeIp()); } + } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -953,15 +1014,19 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List nodeTaskData = runTaskRsp.getItems(); for (NodeTaskData d : nodeTaskData ) { - if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { // no task if (d.getTaskArray().size() == 0) { Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); } else { Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); } + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); Assert.assertNotNull(d.getTaskArray()); for (TaskInfoData task : d.getTaskArray() @@ -972,9 +1037,10 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getDisposeTime()); Assert.assertNotNull(task.getDisposeIp()); } + } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -1012,11 +1078,18 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List allTaskData = allTaskRsp.getItems(); for (NodeTaskData d : allTaskData ) { - if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { // no task - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + if (d.getTaskArray().size() == 0) { + Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + } else { + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + } Assert.assertNotNull(d.getTaskArray()); for (TaskInfoData task : d.getTaskArray() @@ -1029,9 +1102,8 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getDisposeIp()); } } else { - Assert.assertNotNull(d.getId()); Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(d.getTaskArray()); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } @@ -1069,11 +1141,18 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { List allTaskData = allTaskRsp.getItems(); for (NodeTaskData d : allTaskData ) { - if (verifyDeviceIdExists(d.getId())) { - Assert.assertNotNull(d.getId()); + Assert.assertNotNull(d); + Assert.assertNotNull(d.getId()); + Assert.assertNotNull(String.valueOf(d.getStatus())); + Assert.assertNotNull(d.getMessage()); + if (verifyDeviceIdExists(d.getId())) { // no task - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + if (d.getTaskArray().size() == 0) { + Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + } else { + Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + } Assert.assertNotNull(d.getTaskArray()); for (TaskInfoData task : d.getTaskArray() @@ -1086,9 +1165,8 @@ public class DeviceNodeInfoControllerTest extends InitTestEnvironment { Assert.assertNotNull(task.getDisposeIp()); } } else { - Assert.assertNotNull(d.getId()); - Assert.assertEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); - Assert.assertNotNull(d.getTaskArray()); + Assert.assertNotEquals(Long.valueOf(d.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(d.getMessage(), ErrorCode.ERR_OK.getMsg()); } } } From e2630f087a2c664848b9ba31282c2900bbd4ba36 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Thu, 11 Jun 2020 10:36:41 +0800 Subject: [PATCH 15/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E4=BF=A1=E6=81=AF=E6=95=B0=E6=8D=AE=E5=BA=93?= =?UTF-8?q?=E6=93=8D=E4=BD=9C=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= =?UTF-8?q?=202.=20=E6=B7=BB=E5=8A=A0=E4=BB=BB=E5=8A=A1=E7=AE=A1=E7=90=86?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E6=93=8D=E4=BD=9C=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/mapper/DisposeDeviceMapperTest.java | 47 ++++++++++++++ .../test/mapper/DisposeTaskMapperTest.java | 61 +++++++++++++------ 2 files changed, 88 insertions(+), 20 deletions(-) diff --git a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java index 67b77261..a6a3ea06 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java @@ -153,4 +153,51 @@ public class DisposeDeviceMapperTest extends InitTestEnvironment { } }); } + + /** + * T 6 get dispose device by ip is not existed. + * + * @throws JsonProcessingException the json processing exception + */ + @Test + public void t6_getDeviceNotExistsByIp() throws JsonProcessingException { + String ipAddr = "10.88.77.16"; + DisposeDevice dev = disposeDeviceMapper.getDeviceByIp(ipAddr); + log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(dev)); + Assert.assertNull(dev); + } + + /** + * T 7 get device exists by id is not existed. + * + * @throws JsonProcessingException the json processing exception + */ + @Test + public void t7_getDeviceNotExistsById() throws JsonProcessingException { + Long devId = -1L; + DisposeDevice dev = disposeDeviceMapper.getDeviceById(devId); + log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(dev)); + Assert.assertNull(dev); + } + + /** + * T 8 is device exists by ip is not existed. + */ + @Test + public void t8_isDeviceNotExistsByIp() { + String ipAddr = "10.88.77.16"; + Assert.assertEquals(disposeDeviceMapper.isDeviceExistsByIp(ipAddr), 0); + } + + /** + * T 9 is device exists by id is not existed. + */ + @Test + public void t9_isDeviceNotExistsById() { + Long devId = -1L; + Assert.assertEquals(disposeDeviceMapper.isDeviceExistsById(devId), 0); + } } + + + diff --git a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java index 3725ad8e..00d64f92 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java @@ -223,28 +223,10 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { } /** - * T 8 get all task by ip test. + * T 8 get all task by status test. */ @Test - public void t8_getAllTaskByIpTest() { - disposeTaskMapper.selectAll().forEach(v -> disposeTaskMapper - .getAllTaskByDisposeIp(v.getDisposeIp()) - .forEach(k -> { - Assert.assertEquals(k.getDisposeIp(), v.getDisposeIp()); - try { - log.info(objMapper.writerWithDefaultPrettyPrinter().writeValueAsString(k)); - } catch (JsonProcessingException e) { - e.printStackTrace(); - Assert.fail(); - } - })); - } - - /** - * T 9 get all task by status test. - */ - @Test - public void t9_getAllTaskByStatusTest() { + public void t8_getAllTaskByStatusTest() { disposeTaskMapper.selectAll().forEach(v -> disposeTaskMapper .getAllTaskByStatus(v.getCurrentStatus()) .forEach(k -> { @@ -257,4 +239,43 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { } })); } + + /** + * T 9 get task by task information test. + */ + @Test + public void t9_getTaskByTaskInfoTest() { + disposeTaskMapper.selectAll().forEach(v -> disposeTaskMapper + .getTaskByTaskInfo(v.getDeviceId(),v.getAccountId(),v.getDisposeIp(),v.getType()) + .forEach(k -> { + Assert.assertEquals(k.getDeviceId(), v.getDeviceId()); + Assert.assertEquals(k.getAccountId(), v.getAccountId()); + Assert.assertEquals(k.getDisposeIp(), v.getDisposeIp()); + Assert.assertEquals(k.getType(),v.getType()); + try { + log.info(objMapper.writerWithDefaultPrettyPrinter().writeValueAsString(k)); + } catch (JsonProcessingException e) { + e.printStackTrace(); + Assert.fail(); + } + })); + } + + /** + * T 10 get task by type test. + */ + @Test + public void t10_getTaskByTypeTest() { + disposeTaskMapper.selectAll().forEach(v -> disposeTaskMapper + .getAllTaskByType(v.getType()) + .forEach(k -> { + Assert.assertEquals(k.getType(),v.getType()); + try { + log.info(objMapper.writerWithDefaultPrettyPrinter().writeValueAsString(k)); + } catch (JsonProcessingException e) { + e.printStackTrace(); + Assert.fail(); + } + })); + } } From a70241687e014ff7d00bf9949b410026c2791005 Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Thu, 11 Jun 2020 10:45:10 +0800 Subject: [PATCH 16/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=B3=A8=E9=94=80?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=8D=95=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/AuthControllerQATest.java | 146 ++++++++++++++++++ 1 file changed, 146 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java index cc82282b..9d66c319 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java @@ -566,5 +566,151 @@ public class AuthControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); } + /** + * C 7 ver json exception test . + * + * @throws Exception the exception + */ + @Test + public void c7_logoutVerJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":\"cryptoType\":0,\"timeStamp\":1587604300195," + + "\"msgContent\":\"{\\\"userName\\\":\\\"admin\\\"}\"}"; + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + /** + * C 8 ver null exception test . + * + * @throws Exception the exception + */ + @Test + public void c8_logoutVerNullExceptionTest() throws Exception { + String reqData = "{\"ver\":null,\"cryptoType\":0,\"timeStamp\":1587604300195," + + "\"msgContent\":\"{\\\"userName\\\":\\\"admin\\\"}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + /** + * C 9 crypto json exception test . + * + * @throws Exception the exception + */ + @Test + public void c9_logoutCryptoJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":\"timeStamp\":1587604300195," + + "\"msgContent\":\"{\\\"userName\\\":\\\"admin\\\"}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + /** + * C 10 crypto null exception test . + * + * @throws Exception the exception + */ + @Test + public void c10_logoutCryptoNullExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":null,\"timeStamp\":1587604300195," + + "\"msgContent\":\"{\\\"userName\\\":\\\"admin\\\"}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + /** + * C 11 username not exit exception test . + * + * @throws Exception the exception + */ + @Test + public void c11_logoutUsernameNotExitExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604300195," + + "\"msgContent\":\"{\\\"userName\\\":\\\"a\\\"}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_USERNOTFOUND.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class) ; + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_USERNOTFOUND.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_USERNOTFOUND.getMsg()); + } } From 23b455441ca9b90d44696262e4e0a1dab3f67f49 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Thu, 11 Jun 2020 14:39:04 +0800 Subject: [PATCH 17/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E7=B3=BB=E7=BB=9F=E5=BC=82=E5=B8=B8=E6=B5=8B=E8=AF=95=E7=94=A8?= =?UTF-8?q?=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/test/exception/ExceptionTest.java | 219 +++++++++++++++--- .../test/manager/UserAccountManagerTest.java | 2 + 2 files changed, 193 insertions(+), 28 deletions(-) diff --git a/src/test/java/com/dispose/test/exception/ExceptionTest.java b/src/test/java/com/dispose/test/exception/ExceptionTest.java index 2e962d4a..6dc70721 100644 --- a/src/test/java/com/dispose/test/exception/ExceptionTest.java +++ b/src/test/java/com/dispose/test/exception/ExceptionTest.java @@ -1,11 +1,15 @@ package com.dispose.test.exception; +import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; +import com.dispose.pojo.po.ReturnStatus; import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.vo.auth.LoginReq; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; +import org.junit.Assert; import org.junit.FixMethodOrder; import org.junit.Rule; import org.junit.Test; @@ -53,13 +57,6 @@ public class ExceptionTest extends InitTestEnvironment { @Resource private ObjectMapper objectMapper; - /** - * User login. - */ - @Override - public void userLogin() { - } - /** * T 1 input exception. * @@ -78,15 +75,22 @@ public class ExceptionTest extends InitTestEnvironment { reqInfo.setTimeStamp(System.currentTimeMillis()); reqInfo.setMsgContent(objectMapper.writeValueAsString(logReq)); - mockMvc.perform(MockMvcRequestBuilders - .post("/auth/login") - .contentType(MediaType.APPLICATION_JSON) - .content(objectMapper.writeValueAsString(reqInfo))) - .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) - .andReturn() - .getResponse() - .getContentAsString(); + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/login") + .contentType(MediaType.APPLICATION_JSON) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** @@ -94,24 +98,183 @@ public class ExceptionTest extends InitTestEnvironment { * * @throws Exception the exception */ - @Test(expected = Exception.class) + @Test(expected = Throwable.class) public void t2_globalException() throws Exception { - expectedEx.expect(Exception.class); + expectedEx.expect(Throwable.class); + expectedEx.expectMessage("Expected exception: java.lang.Throwable"); ProtocolReqDTO reqInfo = new ProtocolReqDTO(); reqInfo.setVer(ConstValue.Protocol.VERSION); reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); reqInfo.setTimeStamp(System.currentTimeMillis()); - reqInfo.setMsgContent("{}"); + reqInfo.setMsgContent(null); - mockMvc.perform(MockMvcRequestBuilders - .post("/information/protected_ip") - .contentType(MediaType.APPLICATION_JSON) - .content("{}")) - .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(521)) - .andReturn() - .getResponse() - .getContentAsString(); + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/protected_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + + /** + * T 3 global exception. + * + * @throws Exception the exception + */ + @Test(expected = Throwable.class) + public void t3_globalException() throws Exception { + expectedEx.expect(Throwable.class); + expectedEx.expectMessage("Expected exception: java.lang.Throwable"); + + String reqData = "{\"id\":null}"; + + ProtocolReqDTO reqInfo = new ProtocolReqDTO(); + reqInfo.setVer(ConstValue.Protocol.VERSION); + reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); + reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setMsgContent(reqData); + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + /** + * T 4 global exception. + * + * @throws Exception the exception + */ + @Test(expected = Throwable.class) + public void t4_globalException() throws Exception { + expectedEx.expect(Throwable.class); + expectedEx.expectMessage("Expected exception: java.lang.Throwable"); + + String reqData = "{\"id\":1}"; + + ProtocolReqDTO reqInfo = new ProtocolReqDTO(); + reqInfo.setVer(ConstValue.Protocol.VERSION); + reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); + reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setMsgContent(reqData); + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + /** + * T 5 input exception. + * + * @throws Exception the exception + */ + @Test(expected = Throwable.class) + public void t5_inputException() throws Exception { + expectedEx.expect(Throwable.class); + expectedEx.expectMessage("Expected exception: java.lang.Throwable"); + + LoginReq logReq = null; + + ProtocolReqDTO reqInfo = new ProtocolReqDTO(); + reqInfo.setVer(ConstValue.Protocol.VERSION); + reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); + reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setMsgContent(objectMapper.writeValueAsString(logReq)); + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/auth/logout") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + + + /** + * T 6 input exception. + * + * @throws Exception the exception + */ + @Test(expected = Throwable.class) + public void t6_inputException() throws Exception { + expectedEx.expect(Throwable.class); + expectedEx.expectMessage("Expected exception: java.lang.Throwable"); + + LoginReq logReq = null; + + ProtocolReqDTO reqInfo = new ProtocolReqDTO(); + reqInfo.setVer(ConstValue.Protocol.VERSION); + reqInfo.setCryptoType(ConstValue.Protocol.CRYPTO_NONE); + reqInfo.setTimeStamp(System.currentTimeMillis()); + reqInfo.setMsgContent(objectMapper.writeValueAsString(logReq)); + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(objectMapper.writeValueAsString(reqInfo))) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } } \ No newline at end of file diff --git a/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java b/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java index 31f7434e..025a68b7 100644 --- a/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java +++ b/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java @@ -98,6 +98,8 @@ public class UserAccountManagerTest extends InitTestEnvironment { ErrorCode.ERR_LOGOUT); Assert.assertEquals(userAccountCacheManager.verifyUserLogin(getUSER_NAME(), userToken + "13245"), ErrorCode.ERR_TOKENNOTFOUND); + Assert.assertEquals(userAccountCacheManager.verifyUserLogin(getUSER_NAME() + "3213", userToken + "13245"), + ErrorCode.ERR_LOGOUT); } /** From 1dadd718956dee26a0999b063ef4ac47b4087cd1 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Thu, 11 Jun 2020 15:53:31 +0800 Subject: [PATCH 18/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0servi?= =?UTF-8?q?ce=E5=B1=82=E4=BB=BB=E5=8A=A1=E7=AE=A1=E7=90=86=E5=92=8C?= =?UTF-8?q?=E7=94=A8=E6=88=B7=E8=AE=A4=E8=AF=81=E6=96=AD=E8=A8=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/test/service/TaskServiceTest.java | 10 ++++++++++ .../dispose/test/service/UserAccountServiceTest.java | 8 ++++++-- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/test/java/com/dispose/test/service/TaskServiceTest.java b/src/test/java/com/dispose/test/service/TaskServiceTest.java index 12000c7e..4b68e60c 100644 --- a/src/test/java/com/dispose/test/service/TaskServiceTest.java +++ b/src/test/java/com/dispose/test/service/TaskServiceTest.java @@ -73,6 +73,10 @@ public class TaskServiceTest extends InitTestEnvironment { disposeTaskMapper.getAllTaskByStatus(DisposeTaskStatus.TASK_NEW.getCode()).forEach(v -> { ErrorCode err = taskService.startTask(v.getId()); Assert.assertEquals(err, ErrorCode.ERR_OK); + + int currentStatus = disposeTaskMapper.getTaskCurrentStatus(v.getId()); + log.info("current status:{}", currentStatus); + Assert.assertEquals(currentStatus, DisposeTaskStatus.TASK_RUNNING.getCode()); }); } @@ -85,7 +89,13 @@ public class TaskServiceTest extends InitTestEnvironment { disposeTaskMapper.getAllTaskByStatus(DisposeTaskStatus.TASK_RUNNING.getCode()).forEach(v -> { ErrorCode err = taskService.stopTask(v.getId()); Assert.assertEquals(err, ErrorCode.ERR_OK); + + int currentStatus = disposeTaskMapper.getTaskCurrentStatus(v.getId()); + log.info("current status:{}", currentStatus); + Assert.assertEquals(currentStatus, DisposeTaskStatus.TASK_FINISH.getCode()); + taskService.finishTask(v.getId()); + Assert.assertNotNull(taskService.getNodeAllTask(v.getDeviceId())); }); } diff --git a/src/test/java/com/dispose/test/service/UserAccountServiceTest.java b/src/test/java/com/dispose/test/service/UserAccountServiceTest.java index 5d0c71fc..e5155ffc 100644 --- a/src/test/java/com/dispose/test/service/UserAccountServiceTest.java +++ b/src/test/java/com/dispose/test/service/UserAccountServiceTest.java @@ -44,7 +44,7 @@ public class UserAccountServiceTest extends InitTestEnvironment { @Before public void userLoginTest() throws NoSuchAlgorithmException { MulReturnType ret = userAccountService.loginService(getUSER_NAME(), - getPASSWORD()); + getPASSWORD()); if (ret.getFirstParam() == ErrorCode.ERR_OK) { UserAccountServiceTest.token = ret.getSecondParam(); @@ -59,7 +59,7 @@ public class UserAccountServiceTest extends InitTestEnvironment { @Test public void t1_logServiceTest() throws NoSuchAlgorithmException { MulReturnType ret = userAccountService.loginService(getUSER_NAME(), - getPASSWORD()); + getPASSWORD()); Assert.assertEquals(ret.getFirstParam(), ErrorCode.ERR_OK); Assert.assertNotNull(ret.getSecondParam()); @@ -80,6 +80,9 @@ public class UserAccountServiceTest extends InitTestEnvironment { public void t2_logoutServiceTest() { ErrorCode err = userAccountService.logoutService(getUSER_NAME(), token); Assert.assertEquals(err, ErrorCode.ERR_OK); + + err = userAccountService.logoutService(getUSER_NAME(), token + "1235"); + Assert.assertEquals(err, ErrorCode.ERR_LOGOUT); } /** @@ -98,5 +101,6 @@ public class UserAccountServiceTest extends InitTestEnvironment { @Test public void t4_authTokenCheckTest() { Assert.assertEquals(userAccountService.authTokenCheck(token), ErrorCode.ERR_OK); + Assert.assertEquals(userAccountService.authTokenCheck(token + "1235"), ErrorCode.ERR_LOGOUT); } } From a5fec56ecca5c8590e47bb228210e85e84cc02f1 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Thu, 11 Jun 2020 17:36:19 +0800 Subject: [PATCH 19/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=97=A0=E6=B3=95=E5=A4=84=E7=BD=AE=E8=AF=A5IP=E7=9A=84?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E7=A0=81,=E5=BD=93=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E6=97=B6=E8=AE=BE=E5=A4=87?= =?UTF-8?q?IP=E4=B8=8D=E5=9C=A8=E8=8C=83=E5=9B=B4=E5=86=85=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E6=97=A0=E6=B3=95=E5=A4=84=E7=BD=AE=E8=AF=A5IP,?= =?UTF-8?q?=E8=80=8C=E4=B8=8D=E6=98=AF=E6=B2=A1=E6=9C=89=E8=AF=A5=E8=AE=BE?= =?UTF-8?q?=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/dispose/common/ErrorCode.java | 5 +++++ .../java/com/dispose/service/impl/TaskServiceImpl.java | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/src/main/java/com/dispose/common/ErrorCode.java b/src/main/java/com/dispose/common/ErrorCode.java index 1d9a0a3c..00609f1b 100644 --- a/src/main/java/com/dispose/common/ErrorCode.java +++ b/src/main/java/com/dispose/common/ErrorCode.java @@ -141,6 +141,11 @@ public enum ErrorCode { * Err requesttimeout error code. */ ERR_REQUESTTIMEOUT(32, "请求超时"), + + /** + * Err unable to dispose the ip error code. + */ + ERR_UNABLEDISPOSEIP(33, "无法处置该IP"), ; private final int errno; diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index d47aa41d..8ef9b5d2 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -112,6 +112,14 @@ public class TaskServiceImpl implements TaskService { // 没有指定处置能力节点的情况 if (taskId == null || taskId < 0) { disposeDevice = getDisposeNode(task.getDisposeIp(), task.getType()); + + //处置IP不在范围内 + if(disposeDevice == null){ + return MulReturnType.builder() + .firstParam(ErrorCode.ERR_UNABLEDISPOSEIP) + .secondParam(-1L) + .build(); + } } else { // 指定了处置能力节点的情况 disposeDevice = disposeNodeManager.getDisposeDeviceById(taskId); } From c922aa6b395107fb8911c2e17cf7f2db6f5433eb Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Thu, 11 Jun 2020 17:58:21 +0800 Subject: [PATCH 20/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=88=A0=E9=99=A4?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E6=8E=A5=E5=8F=A3=E5=8D=95=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/AuthControllerQATest.java | 2 +- .../DeviceNodeManagerControllerQATest.java | 110 +++++++++++++++++- 2 files changed, 107 insertions(+), 5 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java index 9d66c319..237b4794 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java @@ -369,7 +369,7 @@ public class AuthControllerQATest extends InitTestEnvironment { * @throws Exception the exception */ @Test - public void b6_loginUsernameTypeExceptionTest() throws Exception { + public void b6_loginUsernameIntExceptionTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"" + "{\\\"password\\\":\\\"c3855e6b6bb120450f160ba91134522868f89d36062f2061ebeefd80817e1d58\\\"," + "\\\"userName\\\":1}\"}"; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java index 31dadc64..1070d377 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java @@ -1,11 +1,14 @@ package com.dispose.test.controller; import com.dispose.common.GlobalVar; +import com.dispose.pojo.entity.DisposeDevice; +import com.dispose.pojo.vo.common.IDReturnStatus; import com.dispose.pojo.vo.device.AddNodeRsp; import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.pojo.vo.device.AddNodeRetData; import com.dispose.service.DisposeNodeManager; +import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; @@ -25,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.List; import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; @@ -575,7 +579,7 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":123}\"}"; String ret = mockMvc.perform(MockMvcRequestBuilders - .put("/manager/device") + .delete("/manager/device") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) @@ -585,11 +589,12 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + IDReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), IDReturnStatus.class); Assert.assertNotNull(rspInfo.getMessage()); Assert.assertNotNull(rspInfo.getStatus()); Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); } /** * B 6 del device node id empty exception test. @@ -601,7 +606,7 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":[]}\"}"; String ret = mockMvc.perform(MockMvcRequestBuilders - .put("/manager/device") + .delete("/manager/device") .contentType(MediaType.APPLICATION_JSON) .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(reqData)) @@ -611,10 +616,107 @@ public class DeviceNodeManagerControllerQATest extends InitTestEnvironment { .getResponse() .getContentAsString(); - AddNodeRetData rspInfo = objectMapper.readValue(verifyResp(ret), AddNodeRetData.class); + IDReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), IDReturnStatus.class); Assert.assertNotNull(rspInfo.getMessage()); Assert.assertNotNull(rspInfo.getStatus()); Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + /** + * B 7 del device node id not exit exception test. + * + * @throws Exception the exception + */ + @Test + public void b7_delDeviceNodeIdNotExitExceptionTest() throws Exception { + //String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":[\\\"1\\\",\\\"666\\\"]}\"}"; + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":[\\\"555\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .delete("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + //.andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + List delNodeList = objectMapper.readValue(verifyResp(ret), new TypeReference>() {}); + + for (IDReturnStatus rspInfo : delNodeList) { + Assert.assertNotNull(rspInfo); + Assert.assertNotNull(rspInfo.getId()); + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + + if (verifyDeviceIdExists(rspInfo.getId())) { + Assert.assertEquals(String.valueOf(rspInfo.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(rspInfo.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + +// if (rspInfo.getStatus() == 0) { +// Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); +// Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_OK.getMsg()); +// } else if (rspInfo.getStatus() == 19) { +// Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); +// Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); +// } + + } + } + + /** + * B 8 del device node id string character exception test. + * + * @throws Exception the exception + */ + @Test + public void b8_delDeviceNodeIdStingChaExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040,\"msgContent\":\"{\\\"id\\\":[\\\"bbb\\\"]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .delete("/manager/device") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + IDReturnStatus rspInfo = objectMapper.readValue(verifyResp(ret), IDReturnStatus.class); + + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } + /** + * Verify device id exists boolean. + * + * @param deviceId the device id + * @return the boolean + */ + public boolean verifyDeviceIdExists(String deviceId) { + boolean exists = false; + List decs = disposeNodeManager.getAllDisposeDevice(); + + if (decs != null && decs.size() > 0) { + for (DisposeDevice d : decs) { + if (String.valueOf(d.getId()).equals(deviceId)) { + exists = true; + break; + } + } + } + return exists; } } From 7b3bf739aa146d3edfa5c9a777434065dd49cea0 Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Fri, 12 Jun 2020 18:58:50 +0800 Subject: [PATCH 21/59] =?UTF-8?q?OCT=20REM:=201.=20=E8=8E=B7=E5=8F=96?= =?UTF-8?q?=E8=8A=82=E7=82=B9=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E5=8D=95?= =?UTF-8?q?=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeInfoControllerQATest.java | 323 ++++++++++++++++++ 1 file changed, 323 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 5b4ed42b..2ecc3e7e 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -409,6 +409,113 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * A 11 get version Array contains character test. + * + * @throws Exception the exception + */ + @Test + public void a11_getVersionArrayContainsCharacterTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"12*a \\\"]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + VersionListRsp versionListRsp = objectMapper.readValue(verifyResp(ver), VersionListRsp.class); + List verList = versionListRsp.getItems(); + + for (VersionRsp versionRsp : verList + ) { + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getStatus()); + Assert.assertNotNull(versionRsp.getMessage()); + + if (versionRsp.getStatus() == 0) { + Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (versionRsp.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * A 12 get version Array sort test. + * + * @throws Exception the exception + */ + @Test + public void a12_getVersionArraySortTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"2\\\", \\\"3\\\", \\\"1\\\"]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + VersionListRsp versionListRsp = objectMapper.readValue(verifyResp(ver), VersionListRsp.class); + List verList = versionListRsp.getItems(); + + for (VersionRsp versionRsp : verList + ) { + Assert.assertNotNull(versionRsp.getId()); + Assert.assertNotNull(versionRsp.getStatus()); + Assert.assertNotNull(versionRsp.getMessage()); + + if (versionRsp.getStatus() == 0) { + Assert.assertNotNull(versionRsp.getVersion()); + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (versionRsp.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(versionRsp.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * A 13 get version id json exception test. + * + * @throws Exception the exception + */ + @Test + public void a13_getVersionIdJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":}\"}"; + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/version") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + VersionRsp versionRsp = objectMapper.readValue(verifyResp(ver), new TypeReference() {}); + + Assert.assertEquals(String.valueOf(versionRsp.getStatus()),String.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(versionRsp.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + + } + /** * B 1 get device info normal one exist device test. * @@ -735,6 +842,109 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * B 11 get device info Array contains character test. + * + * @throws Exception the exception + */ + @Test + public void b11_getDeviceInfoArrayContainsCharacterTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"12*a \\\"]}\"}"; + + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceInfoRsp deviceInfoRsp = objectMapper.readValue(verifyResp(ver), DeviceInfoRsp.class); + List verList = deviceInfoRsp.getItems(); + + for (DeviceInfoData deviceInfoData : verList + ) { + Assert.assertNotNull(deviceInfoData.getId()); + Assert.assertNotNull(String.valueOf(deviceInfoData.getStatus())); + Assert.assertNotNull(deviceInfoData.getMessage()); + + if (deviceInfoData.getStatus() == 0) { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * B 12 get device info Array sort test. + * + * @throws Exception the exception + */ + @Test + public void b12_getDeviceInfoArraySortTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"2\\\", \\\"3\\\", \\\"1\\\"]}\"}"; + + String deviceInfo = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceInfoRsp deviceInfoRsp = objectMapper.readValue(verifyResp(deviceInfo), DeviceInfoRsp.class); + List verList = deviceInfoRsp.getItems(); + + for (DeviceInfoData deviceInfoData : verList + ) { + Assert.assertNotNull(deviceInfoData.getId()); + Assert.assertNotNull(String.valueOf(deviceInfoData.getStatus())); + Assert.assertNotNull(deviceInfoData.getMessage()); + + if (deviceInfoData.getStatus() == 0) { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * B 13 get device info id json exception test. + * + * @throws Exception the exception + */ + @Test + public void b13_getDeviceInfoIdJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":}\"}"; + String ver = mockMvc.perform(MockMvcRequestBuilders + .post("/information/deviceinfo") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + DeviceInfoData deviceInfoData = objectMapper.readValue(verifyResp(ver), new TypeReference() {}); + + Assert.assertEquals(String.valueOf(deviceInfoData.getStatus()),String.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(deviceInfoData.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } /** * C 1 get link status normal one online device test. * @@ -1081,6 +1291,119 @@ public class DeviceNodeInfoControllerQATest extends InitTestEnvironment { } } + /** + * C 11 get link status Array contains character test. + * + * @throws Exception the exception + */ + @Test + public void c11_getLinkStatusArrayContainsCharacterTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"1\\\", \\\"12*a \\\"]}\"}"; + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + LinkStatusListRsp linkStatusListRsp = objectMapper.readValue(verifyResp(linkstatus), LinkStatusListRsp.class); + List linkStatusRspList = linkStatusListRsp.getItems(); + + for (LinkStatusRsp linkStatusRsp : linkStatusRspList + ) { + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertNotNull(linkStatusRsp.getStatus()); + Assert.assertNotNull(linkStatusRsp.getMessage()); + + if (linkStatusRsp.getStatus() == 0) { + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (linkStatusRsp.getStatus() == 19){ + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "0"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * C 12 get link status Array sort test. + * + * @throws Exception the exception + */ + @Test + public void c12_getLinkStatusArraySortTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":[\\\"2\\\", \\\"3\\\", \\\"1\\\"]}\"}"; + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + LinkStatusListRsp linkStatusListRsp = objectMapper.readValue(verifyResp(linkstatus), LinkStatusListRsp.class); + List linkStatusRspList = linkStatusListRsp.getItems(); + + for (LinkStatusRsp linkStatusRsp : linkStatusRspList + ) { + Assert.assertNotNull(linkStatusRsp.getId()); + Assert.assertNotNull(String.valueOf(linkStatusRsp.getOnline())); + Assert.assertNotNull(linkStatusRsp.getStatus()); + Assert.assertNotNull(linkStatusRsp.getMessage()); + + if (linkStatusRsp.getStatus() == 0) { + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "1"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (linkStatusRsp.getStatus() == 19){ + Assert.assertEquals(String.valueOf(linkStatusRsp.getOnline()), "0"); + Assert.assertEquals(String.valueOf(linkStatusRsp.getStatus()), String.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(linkStatusRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + } + /** + * C 13 get link status id json exception test. + * + * @throws Exception the exception + */ + @Test + public void c13_getLinkStatusIdJsonExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"id\\\":}\"}"; + + + String linkstatus = mockMvc.perform(MockMvcRequestBuilders + .post("/information/linkstatus") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus rspInfo = objectMapper.readValue(verifyResp(linkstatus), ReturnStatus.class); + + Assert.assertNotNull(rspInfo.getStatus()); + Assert.assertNotNull(rspInfo.getMessage()); + Assert.assertEquals(Long.valueOf(rspInfo.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(rspInfo.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } /** * d1 get one node capacity . */ From c213f1f8a640f62aa6dbffe83effeb37a80b9038 Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Mon, 15 Jun 2020 17:44:02 +0800 Subject: [PATCH 22/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=90=AF=E5=8A=A8?= =?UTF-8?q?=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E5=8D=95=E6=B5=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/TaskControllerQATest.java | 194 ++++++++++++++++++ 1 file changed, 194 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index 4102cd40..834f9bed 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -353,6 +353,200 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } + /** + * a11 id empty exception test. + * + * @throws Exception the exception + */ + @Test + public void a11_startTaskIdEmptyExceptionTest() throws Exception { + String reqDataIdEmpty = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":\\\"\\\"," + + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataIdEmpty)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + /** + * a12 id zero test. + * + * @throws Exception the exception + */ + @Test + public void a12_startTaskIdZeroTest() throws Exception { + String reqDataIdZero = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":\\\"0\\\"," + + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataIdZero)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), StartTaskRsp.class); + + Assert.assertNotNull(startTaskRsp); + Assert.assertNotNull(startTaskRsp.getStatus()); + Assert.assertNotNull(startTaskRsp.getMessage()); + + if (startTaskRsp.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(startTaskRsp.getExpireTime())); + Assert.assertNotNull(startTaskRsp.getId()); + Assert.assertNotNull(startTaskRsp.getTaskId()); + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (startTaskRsp.getStatus() == 26) { + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_TASKRUNNING.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_TASKRUNNING.getMsg()); + } else if (startTaskRsp.getStatus() == 19) { + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + + } + /** + * a13 id normal exception test. + * + * @throws Exception the exception + */ + @Test + public void a13_startTaskIdNormalTest() throws Exception { + String reqDataIdNormal = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":\\\"1\\\"," + + "\\\"type\\\":0, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataIdNormal)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), StartTaskRsp.class); + + Assert.assertNotNull(startTaskRsp); + Assert.assertNotNull(startTaskRsp.getStatus()); + Assert.assertNotNull(startTaskRsp.getMessage()); + + if (startTaskRsp.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(startTaskRsp.getExpireTime())); + Assert.assertNotNull(startTaskRsp.getId()); + Assert.assertNotNull(startTaskRsp.getTaskId()); + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (startTaskRsp.getStatus() == 26) { + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_TASKRUNNING.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_TASKRUNNING.getMsg()); + } + } + /** + * a14 type error exception test. + * + * @throws Exception the exception + */ + @Test + public void a14_startTaskTypeErrorExceptionTest() throws Exception { + String reqDataTypeError = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + + "\\\"type\\\":5, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":120}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataTypeError)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + /** + * a15 disposeTime negative exception test. + * + * @throws Exception the exception + */ + @Test + public void a15_startTaskDisposeTimeNegativeExceptionTest() throws Exception { + //string disposeTime + String reqDataDisposeTimeNegative = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + + "\\\"type\\\":null, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":-10}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataDisposeTimeNegative)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + /** + * a16 disposeTime zero exception test. + * + * @throws Exception the exception + */ + @Test + public void a16_startTaskDisposeTimeZeroExceptionTest() throws Exception { + //string disposeTime + String reqDataDisposeTimeZero = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\":-1," + + "\\\"type\\\":null, \\\"disposeIp\\\":\\\"192.168.4.2\\\", \\\"disposeTime\\\":0}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqDataDisposeTimeZero)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } /** * b1 taskId empty exception test. 停止指定任务的时候必须指定id id不能为空字符串 * From a6518526a3f6d4ef78f203e4fdaf9d09ac9a2f6b Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Tue, 16 Jun 2020 17:37:44 +0800 Subject: [PATCH 23/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A4=84=E7=BD=AE?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E7=9B=B8=E5=85=B3=E5=8D=95=E6=B5=8Bb6b7c9c10?= =?UTF-8?q?d7e7f8g6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/controller/TaskControllerQATest.java | 233 ++++++++++++++++++ 1 file changed, 233 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index 834f9bed..f41e1158 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -703,7 +703,72 @@ public class TaskControllerQATest extends InitTestEnvironment { } } + /** + * b6 stop task Array sort test. 排序 + * + * @throws Exception the exception + */ + @Test + public void b6_stopTaskArraySortTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604308040," + + "\"msgContent\":\"{\\\"taskId\\\":[\\\"1411\\\", \\\"60\\\", \\\"2\\\", \\\"1142\\\"]}\"}"; + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); + List taskInfoList = startTaskRsp.getItems(); + for (TaskInfoData task : taskInfoList + ) { + Assert.assertNotNull(task.getStatus()); + Assert.assertNotNull(task.getMessage()); + + if (task.getStatus() == 0) { + Assert.assertNotNull(task.getId()); + Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (task.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + } + } + /** + * b7 taskId int exception test. + * + * @throws Exception the exception + */ + @Test + public void b7_stopTaskTaskIdIntExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"taskId\\\":1142}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } /** * c1 id null exception test. * @@ -935,7 +1000,67 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } + /** + * c9 type negative exception test. + */ + @Test + public void c9_stopTaskByIpTypeNegativeExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":-5,\\\"disposeIp\\\":\\\"192.168.5.8\\\"}]}\"}"; + String taskStopByIp = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(taskStopByIp), ReturnStatus.class); + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } + /** + * c10 normal stop tasks by dispose ip test. + */ + @Test + public void c10_NormalStopTasksByDisposeIpTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":-1,\\\"disposeIp\\\":\\\"192.168.3.3\\\"}, {\\\"id\\\":\\\"2\\\",\\\"type\\\":2,\\\"disposeIp\\\":\\\"192.168.3.4\\\"}]}\"}"; + + String taskStopByIp = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop_ip") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + TaskInfoRsp startTaskRsp = objectMapper.readValue(verifyResp(taskStopByIp), TaskInfoRsp.class); + List taskInfoList = startTaskRsp.getItems(); + for (TaskInfoData task : taskInfoList + ) { + Assert.assertNotNull(task.getStatus()); + Assert.assertNotNull(task.getMessage()); + + if (task.getStatus() == 0) { + Assert.assertNotNull(task.getId()); + Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (task.getStatus() == 30) { + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHTASK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_NOSUCHTASK.getMsg()); + } + } + } /** * d1 stop task by single node test. */ @@ -1129,6 +1254,34 @@ public class TaskControllerQATest extends InitTestEnvironment { Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); } + /** + * d7 type string exception test. + * + * @throws Exception the exception + */ + @Test + public void d7_stopTaskByNodeTypeStringExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":\\\"abc\\\"}]}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop_node") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } /** * e1 stop task all test. @@ -1339,7 +1492,32 @@ public class TaskControllerQATest extends InitTestEnvironment { } } } + /** + * e7 type error exception test. + * + * @throws Exception the exception + */ + @Test + public void e7_stopTaskAllTypeErrorExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":6}\"}"; + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop_all") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMS.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMS.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMS.getMsg()); + } /** * f1 get node task of node test. */ @@ -1621,6 +1799,35 @@ public class TaskControllerQATest extends InitTestEnvironment { } }); } + /** + * f8 get node task Array contains character test . + */ + @Test + public void f8_GetNodeTaskInfoArrayContainsCharacterTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"id\\\": " + + "[\\\"1\\\",\\\"ab\\\",\\\"123\\\"], \\\"type\\\":0}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get_node") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + NodeTaskRsp nodeTaskRsp = objectMapper.readValue(verifyResp(ret), NodeTaskRsp.class); + + Assert.assertNotNull(nodeTaskRsp); + nodeTaskRsp.getItems().forEach(v -> { + Assert.assertNotNull(v.getStatus()); + Assert.assertNotNull(v.getMessage()); + Assert.assertEquals(Long.valueOf(v.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(v.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + }); + } /** * g1 get node detailed taskId empty exception test. 空字符串表示所有节点任务 @@ -1784,4 +1991,30 @@ public class TaskControllerQATest extends InitTestEnvironment { } }); } + /** + * g6 get node detailed taskId int exception test . + */ + @Test + public void g6_GetNodeDetailedInfoTaskIdIntExceptionTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"taskId\\\":60}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/get") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_PARAMEXCEPTION.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + ReturnStatus returnStatus = objectMapper.readValue(verifyResp(ret), ReturnStatus.class); + + Assert.assertNotNull(returnStatus.getStatus()); + Assert.assertNotNull(returnStatus.getMessage()); + Assert.assertEquals(Long.valueOf(returnStatus.getStatus()), Long.valueOf(ErrorCode.ERR_PARAMEXCEPTION.getCode())); + Assert.assertEquals(returnStatus.getMessage(), ErrorCode.ERR_PARAMEXCEPTION.getMsg()); + } } From 51f7b0324a315d106ecef1b9e4e36833d0f792cc Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 16 Jun 2020 17:48:49 +0800 Subject: [PATCH 24/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E6=B5=8B=E8=AF=95=E4=BB=A3?= =?UTF-8?q?=E7=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/haohan/HaoHanInterfaceTestCase.java | 54 +++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java diff --git a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java new file mode 100644 index 00000000..607f3654 --- /dev/null +++ b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java @@ -0,0 +1,54 @@ +package com.dispose.test.haohan; + +import com.dispose.common.Http; +import lombok.extern.slf4j.Slf4j; +import org.junit.Assert; +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runner.RunWith; +import org.junit.runners.MethodSorters; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@Slf4j +@SpringBootTest +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class HaoHanInterfaceTestCase { + @Test + public void a1_sendTowTest() { + String jsonRequest = "{\"ip\":\"192.168.1.1\",\"orderFrom\":\"haohandata\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendFlow", + null, + jsonRequest); + + log.info("++++++++++++Server Return: [{}]", svrReturn); + Assert.assertNotNull(svrReturn); + Assert.assertNotEquals(svrReturn.length(), 0); + } + + @Test + public void a2_delTowTest() { + String jsonRequest = "{\"cleanTaskId\":12345,\"orderFrom\":\"haohandata\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delFlow", + null, + jsonRequest); + + log.info("+++++++++++Server Return: [{}]", svrReturn); + Assert.assertNotNull(svrReturn); + Assert.assertNotEquals(svrReturn.length(), 0); + } + + @Test + public void a3_delTowTest() { + String jsonRequest = "{\"orderFrom\":\"haohandata\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", + null, + jsonRequest); + + log.info("+++++++++++Server Return: [{}]", svrReturn); + Assert.assertNotNull(svrReturn); + Assert.assertNotEquals(svrReturn.length(), 0); + } +} + From 32310081635afbd78938124252e9b3a345afa868 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Mon, 22 Jun 2020 15:17:16 +0800 Subject: [PATCH 25/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E5=A4=84=E7=BD=AE=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E5=AE=9E=E7=8E=B0=202.=20=E5=A2=9E=E5=8A=A0=E6=B5=A9?= =?UTF-8?q?=E7=80=9A=E8=AE=BE=E5=A4=87=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E5=AE=9E=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/IPAddrType.java | 5 + .../com/dispose/dispose/DeviceRouter.java | 14 +- .../dispose/dispose/DisposeEntryManager.java | 5 - .../com/dispose/dispose/impl/HaoHanImpl.java | 178 ++++++++++++++++++ .../java/com/dispose/test/debug/demo.java | 27 ++- 5 files changed, 219 insertions(+), 10 deletions(-) create mode 100644 src/main/java/com/dispose/dispose/impl/HaoHanImpl.java diff --git a/src/main/java/com/dispose/common/IPAddrType.java b/src/main/java/com/dispose/common/IPAddrType.java index bc3006d3..7c07b84e 100644 --- a/src/main/java/com/dispose/common/IPAddrType.java +++ b/src/main/java/com/dispose/common/IPAddrType.java @@ -63,6 +63,11 @@ public enum IPAddrType { */ public static boolean ipInRange(String rangeIp, String ipAddr) throws AddressStringException { final int numIp = 2; + + if (rangeIp.equals(ipAddr)) { + return true; + } + String[] ipList = rangeIp.split("-"); if (ipList.length != numIp) { diff --git a/src/main/java/com/dispose/dispose/DeviceRouter.java b/src/main/java/com/dispose/dispose/DeviceRouter.java index 5bb172c9..83adcbb8 100644 --- a/src/main/java/com/dispose/dispose/DeviceRouter.java +++ b/src/main/java/com/dispose/dispose/DeviceRouter.java @@ -4,6 +4,7 @@ import com.dispose.common.DisposeDeviceType; import com.dispose.common.GlobalVar; import com.dispose.common.IPAddrType; import com.dispose.dispose.impl.DpTechImpl; +import com.dispose.dispose.impl.HaoHanImpl; import com.dispose.dispose.impl.VirtualDeviceImpl; import java.util.concurrent.ConcurrentHashMap; @@ -36,15 +37,20 @@ public class DeviceRouter { if (DEVICE_CACHE_MAP.containsKey(mapKey)) { return DEVICE_CACHE_MAP.get(mapKey); } else { + DisposeEntryManager dev = null; // 第一次访问创建新对象并缓存 if (GlobalVar.USED_VIRTUAL_DISPOSE_MODE) { // 虚拟设备,供调试业务使用 - DisposeEntryManager dev = new VirtualDeviceImpl(ipAddr); - DEVICE_CACHE_MAP.put(mapKey, dev); - return dev; + dev = new VirtualDeviceImpl(ipAddr); } else if (devType == DisposeDeviceType.DPTECH_UMC.getCode()) { // 迪普设备 - DisposeEntryManager dev = new DpTechImpl(ipAddr); + dev = new DpTechImpl(ipAddr); + } else if (devType == DisposeDeviceType.HAOHAN_PLATFORM.getCode()) { + // 浩瀚设备 + dev = new HaoHanImpl(ipAddr); + } + + if (dev != null) { DEVICE_CACHE_MAP.put(mapKey, dev); return dev; } diff --git a/src/main/java/com/dispose/dispose/DisposeEntryManager.java b/src/main/java/com/dispose/dispose/DisposeEntryManager.java index 8b8a948d..fb7bf455 100644 --- a/src/main/java/com/dispose/dispose/DisposeEntryManager.java +++ b/src/main/java/com/dispose/dispose/DisposeEntryManager.java @@ -90,9 +90,4 @@ public interface DisposeEntryManager { * @return the device info */ DeviceInfo getDeviceInfo(); - - //public NtcRequestResultInfo stopAbnormalTask(String abnormalIp, int attackType, int direction); - - //public NtcRequestResultInfo startAbnormalTask(String abnormalIp, int attackType, int direction); - } diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java new file mode 100644 index 00000000..b4dc3636 --- /dev/null +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -0,0 +1,178 @@ +package com.dispose.dispose.impl; + +import com.dispose.common.DeviceCapacity; +import com.dispose.common.ErrorCode; +import com.dispose.common.IPAddrType; +import com.dispose.dispose.DisposeEntryManager; +import com.dispose.dispose.po.DeviceInfo; +import com.dispose.pojo.po.DisposeDeviceCapacity; +import lombok.extern.slf4j.Slf4j; + +import java.util.ArrayList; +import java.util.List; + +/** + * The type Hao han. + * + * @author + */ +@Slf4j +public class HaoHanImpl implements DisposeEntryManager { + + /** + * Instantiates a new Hao han. + * + * @param ipAddr the ip addr + */ + public HaoHanImpl(String ipAddr) { + + } + + /** + * Instantiates a new Hao han. + * + * @param ipAddr the ip addr + * @param type the type + */ + public HaoHanImpl(String ipAddr, IPAddrType type) { + + } + + /** + * Run dispose error code. + * + * @param ip the ip + * @param type the type + * @return the error code + */ + @Override + public ErrorCode runDispose(String ip, DeviceCapacity type) { + return ErrorCode.ERR_OK; + } + + /** + * Stop dispose error code. + * + * @param ipAddr the ip addr + * @param type the type + * @return the error code + */ + @Override + public ErrorCode stopDispose(String ipAddr, DeviceCapacity type) { + return ErrorCode.ERR_OK; + } + + /** + * Gets version. + * + * @return the version + */ + @Override + public String getVersion() { + return "Not Support"; + } + + /** + * Gets device info. + * + * @return the device info + */ + @Override + public DeviceInfo getDeviceInfo() { + // 当前设备接口不支持,返回模拟数据 + return DeviceInfo.builder() + .vendor("HaoHan") + .model("Unknown") + .firmware("Unknown") + .os("Linux Server") + .kernel("Linux") + .arch("x86_64") + .memory(-1) + .freeMemory(-1) + .cpuUsed(-1) + .build(); + } + + /** + * Gets device capacity. + * + * @return the device capacity + */ + @Override + public List getDeviceCapacity() { + List capList = new ArrayList<>(); + + // 保存清洗能力信息 + capList.add(DisposeDeviceCapacity.builder() + // 清洗能力 + .capacity(DeviceCapacity.CLEANUP.getCode()) + .tolFlowCapacity(0) + // IPv4范围 + .protectIpV4(new String[] {"0.0.0.0-255.255.255.255"}) + // IPv6范围 + .protectIpV6(new String[] {""}) + .build()); + + return capList; + } + + /** + * Gets device link status. + * + * @return the device link status + */ + @Override + public boolean getDeviceLinkStatus() { + try { + // 获取防护对象接口调用成功认为设备心跳正常 + getAllProtectionObject(); + return true; + } catch (Exception ex) { + log.error(ex.getMessage()); + } + + return false; + } + + /** + * Gets all detection object. + * + * @param the type parameter + * @return the all detection object + */ + @Override + public T getAllDetectionObject() { + return null; + } + + /** + * Gets all protection object. + * + * @param the type parameter + * @return the all protection object + */ + @Override + public T getAllProtectionObject() { + return null; + } + + /** + * Gets protect devices. + * + * @return the protect devices + */ + @Override + public String getProtectDevices() { + return null; + } + + /** + * Gets detection devices. + * + * @return the detection devices + */ + @Override + public String getDetectionDevices() { + return null; + } +} diff --git a/src/test/java/com/dispose/test/debug/demo.java b/src/test/java/com/dispose/test/debug/demo.java index 51215f01..7fd1be01 100644 --- a/src/test/java/com/dispose/test/debug/demo.java +++ b/src/test/java/com/dispose/test/debug/demo.java @@ -1,16 +1,28 @@ package com.dispose.test.debug; +import com.dispose.common.IPAddrType; import com.dispose.pojo.vo.common.IDArrayReq; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; +import inet.ipaddr.AddressStringException; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.test.context.junit4.SpringRunner; +/** + * The type Demo. + * + * @author + */ @Slf4j public class demo { + /** + * A 1 idid array req test. + * + * @throws JsonProcessingException the json processing exception + */ @Test public void a1_IDIDArrayReqTest() throws JsonProcessingException { String json = "{\"id\":[\"1\", \"123\", \"1234\", \"1234\"]}"; @@ -28,6 +40,19 @@ public class demo { id = new ObjectMapper().readValue(json, IDArrayReq.class); Assert.assertEquals(id.getId().length, 3); - id = new ObjectMapper().readValue(json4, IDArrayReq.class); + //id = new ObjectMapper().readValue(json4, IDArrayReq.class); + } + + /** + * A 2 ip range test. + * + * @throws AddressStringException the address string exception + */ + @Test + public void a2_ipRangeTest() throws AddressStringException { + Assert.assertTrue(IPAddrType.ipInRange("192.168.0.1-192.168.0.100", "192.168.0.30")); + Assert.assertTrue(IPAddrType.ipInRange("192.168.0.30", "192.168.0.30")); + Assert.assertTrue(IPAddrType.ipInRange("192.168.0.40-192.168.0.40", "192.168.0.40")); + Assert.assertTrue(IPAddrType.ipInRange("0.0.0.0-255.255.255.255", "192.168.0.30")); } } From 5794aaaf3ebb5f41b9656a8fc0b2ce072de81cc4 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Mon, 22 Jun 2020 15:20:36 +0800 Subject: [PATCH 26/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BC=98=E5=8C=96test?= =?UTF-8?q?=20case=20import=E5=AF=BC=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../test/TestSuit/AllDisposePlatformTest.java | 8 ++++---- .../test/config/DisposeConfigureTest.java | 2 +- .../com/dispose/test/config/MyConfigTest.java | 2 +- .../test/controller/AuthControllerQATest.java | 4 ++-- .../controller/AuthControllerSmokeTest.java | 2 +- .../DeviceNodeInfoControllerQATest.java | 17 ++++++++++++++--- .../DeviceNodeInfoControllerSmokeTest.java | 4 ++-- .../DeviceNodeInfoControllerTest.java | 4 ++-- .../DeviceNodeManagerControllerQATest.java | 8 +++----- .../DeviceNodeManagerControllerSmokeTest.java | 4 ++-- .../DeviceNodeManagerControllerTest.java | 4 ++-- .../test/controller/TaskControllerQATest.java | 4 ++-- .../controller/TaskControllerSmokeTest.java | 4 ++-- .../test/controller/TaskControllerTest.java | 10 +++++----- src/test/java/com/dispose/test/debug/demo.java | 4 +--- .../test/dptech/DPTechInterfaceTestCase.java | 2 +- .../dispose/test/exception/ExceptionTest.java | 6 +++--- .../test/manager/UserAccountManagerTest.java | 2 +- .../test/mapper/DisposeDeviceMapperTest.java | 2 +- .../test/mapper/DisposeTaskMapperTest.java | 2 +- .../test/mapper/UserAccountMapperTest.java | 2 +- .../test/service/DisposeNodeManagerTest.java | 2 +- .../dispose/test/service/TaskServiceTest.java | 2 +- .../test/service/UserAccountServiceTest.java | 2 +- 24 files changed, 55 insertions(+), 48 deletions(-) diff --git a/src/test/java/com/dispose/test/TestSuit/AllDisposePlatformTest.java b/src/test/java/com/dispose/test/TestSuit/AllDisposePlatformTest.java index 271642d1..a3985cb9 100644 --- a/src/test/java/com/dispose/test/TestSuit/AllDisposePlatformTest.java +++ b/src/test/java/com/dispose/test/TestSuit/AllDisposePlatformTest.java @@ -3,15 +3,15 @@ package com.dispose.test.TestSuit; import com.dispose.test.config.DisposeConfigureTest; import com.dispose.test.config.MyConfigTest; +import com.dispose.test.controller.AuthControllerTest; +import com.dispose.test.controller.DeviceNodeInfoControllerTest; +import com.dispose.test.controller.DeviceNodeManagerControllerTest; +import com.dispose.test.controller.TaskControllerTest; import com.dispose.test.dptech.DPTechInterfaceTestCase; import com.dispose.test.manager.UserAccountManagerTest; import com.dispose.test.mapper.DisposeDeviceMapperTest; import com.dispose.test.mapper.DisposeTaskMapperTest; import com.dispose.test.mapper.UserAccountMapperTest; -import com.dispose.test.controller.AuthControllerTest; -import com.dispose.test.controller.DeviceNodeInfoControllerTest; -import com.dispose.test.controller.DeviceNodeManagerControllerTest; -import com.dispose.test.controller.TaskControllerTest; import com.dispose.test.service.DisposeNodeManagerTest; import com.dispose.test.service.TaskServiceTest; import com.dispose.test.service.UserAccountServiceTest; diff --git a/src/test/java/com/dispose/test/config/DisposeConfigureTest.java b/src/test/java/com/dispose/test/config/DisposeConfigureTest.java index 3aeb7cbe..9e42376e 100644 --- a/src/test/java/com/dispose/test/config/DisposeConfigureTest.java +++ b/src/test/java/com/dispose/test/config/DisposeConfigureTest.java @@ -1,7 +1,7 @@ package com.dispose.test.config; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.config.DisposeConfigure; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/config/MyConfigTest.java b/src/test/java/com/dispose/test/config/MyConfigTest.java index 5201c8ea..21ae0553 100644 --- a/src/test/java/com/dispose/test/config/MyConfigTest.java +++ b/src/test/java/com/dispose/test/config/MyConfigTest.java @@ -1,7 +1,7 @@ package com.dispose.test.config; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.config.MyConfig; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java index 237b4794..a66d3a77 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerQATest.java @@ -1,10 +1,10 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.auth.LogoutRsp; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/controller/AuthControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/AuthControllerSmokeTest.java index 45ee290e..d84841f2 100644 --- a/src/test/java/com/dispose/test/controller/AuthControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/AuthControllerSmokeTest.java @@ -1,9 +1,9 @@ package com.dispose.test.controller; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.auth.LoginRsp; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java index 2ecc3e7e..f9a653cc 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerQATest.java @@ -13,15 +13,26 @@ */ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.common.DisposeCapacity; import com.dispose.pojo.vo.common.TaskInfoData; -import com.dispose.pojo.vo.information.*; +import com.dispose.pojo.vo.information.DeviceCapacityData; +import com.dispose.pojo.vo.information.DeviceCapacityRsp; +import com.dispose.pojo.vo.information.DeviceInfoData; +import com.dispose.pojo.vo.information.DeviceInfoRsp; +import com.dispose.pojo.vo.information.DisposeNodeData; +import com.dispose.pojo.vo.information.DisposeNodeListRsp; +import com.dispose.pojo.vo.information.LinkStatusListRsp; +import com.dispose.pojo.vo.information.LinkStatusRsp; +import com.dispose.pojo.vo.information.NodeTaskData; +import com.dispose.pojo.vo.information.NodeTaskRsp; +import com.dispose.pojo.vo.information.VersionListRsp; +import com.dispose.pojo.vo.information.VersionRsp; import com.dispose.service.DisposeNodeManager; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerSmokeTest.java index 4492f0cb..68938bc7 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerSmokeTest.java @@ -1,9 +1,8 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DisposeTaskStatus; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.mapper.DisposeTaskMapper; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.common.DisposeCapacity; @@ -13,6 +12,7 @@ import com.dispose.pojo.vo.information.DisposeNodeData; import com.dispose.pojo.vo.information.DisposeNodeListRsp; import com.dispose.pojo.vo.information.NodeTaskData; import com.dispose.pojo.vo.information.NodeTaskRsp; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java index f449b81f..a54c863e 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeInfoControllerTest.java @@ -1,9 +1,8 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.mapper.DisposeDeviceMapper; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.entity.DisposeDevice; @@ -24,6 +23,7 @@ import com.dispose.pojo.vo.information.VersionListRsp; import com.dispose.pojo.vo.information.VersionRsp; import com.dispose.service.DisposeNodeManager; import com.dispose.service.UserAccountService; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import org.junit.Assert; import org.junit.FixMethodOrder; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java index 1070d377..19a72c34 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerQATest.java @@ -1,13 +1,13 @@ package com.dispose.test.controller; +import com.dispose.common.ErrorCode; import com.dispose.common.GlobalVar; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.vo.common.IDReturnStatus; -import com.dispose.pojo.vo.device.AddNodeRsp; -import com.dispose.test.Global.InitTestEnvironment; -import com.dispose.common.ErrorCode; import com.dispose.pojo.vo.device.AddNodeRetData; +import com.dispose.pojo.vo.device.AddNodeRsp; import com.dispose.service.DisposeNodeManager; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; @@ -27,8 +27,6 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; - -import java.util.ArrayList; import java.util.List; import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerSmokeTest.java index 08e28309..f3175838 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerSmokeTest.java @@ -1,14 +1,14 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.MulReturnType; import com.dispose.pojo.vo.common.IDReturnStatus; import com.dispose.pojo.vo.device.AddNodeRetData; import com.dispose.pojo.vo.device.AddNodeRsp; import com.dispose.service.DisposeNodeManager; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java index 8db88db8..f458bc93 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java @@ -1,10 +1,9 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.common.DisposeDeviceType; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.dto.ProtocolReqDTO; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.MulReturnType; @@ -15,6 +14,7 @@ import com.dispose.pojo.vo.device.AddNodeReq; import com.dispose.pojo.vo.device.AddNodeRetData; import com.dispose.pojo.vo.device.AddNodeRsp; import com.dispose.service.DisposeNodeManager; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java index f41e1158..1d78912e 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerQATest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerQATest.java @@ -1,13 +1,13 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.common.TaskInfoData; import com.dispose.pojo.vo.information.NodeTaskRsp; import com.dispose.pojo.vo.task.StartTaskRsp; import com.dispose.pojo.vo.task.TaskInfoRsp; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java index 76838813..c4b11955 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java @@ -1,11 +1,11 @@ package com.dispose.test.controller; -import com.dispose.common.GlobalVar; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; +import com.dispose.common.GlobalVar; import com.dispose.pojo.vo.common.TaskInfoData; import com.dispose.pojo.vo.task.StartTaskRsp; import com.dispose.pojo.vo.task.TaskInfoRsp; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/controller/TaskControllerTest.java b/src/test/java/com/dispose/test/controller/TaskControllerTest.java index 8b4fb015..9fbf07b9 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerTest.java @@ -1,13 +1,11 @@ package com.dispose.test.controller; -import com.dispose.common.DisposeTaskStatus; -import com.dispose.common.FlowDirection; -import com.dispose.common.GlobalVar; -import com.dispose.service.TaskService; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.common.DeviceCapacity; +import com.dispose.common.DisposeTaskStatus; import com.dispose.common.ErrorCode; +import com.dispose.common.FlowDirection; +import com.dispose.common.GlobalVar; import com.dispose.common.IPAddrType; import com.dispose.manager.TaskCacheManager; import com.dispose.mapper.DisposeDeviceMapper; @@ -24,6 +22,8 @@ import com.dispose.pojo.vo.task.StartTaskRsp; import com.dispose.pojo.vo.task.StopTaskData; import com.dispose.pojo.vo.task.StopTaskReq; import com.dispose.pojo.vo.task.TaskInfoRsp; +import com.dispose.service.TaskService; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/debug/demo.java b/src/test/java/com/dispose/test/debug/demo.java index 7fd1be01..cc8d66c8 100644 --- a/src/test/java/com/dispose/test/debug/demo.java +++ b/src/test/java/com/dispose/test/debug/demo.java @@ -8,8 +8,6 @@ import inet.ipaddr.AddressStringException; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.Test; -import org.junit.runner.RunWith; -import org.springframework.test.context.junit4.SpringRunner; /** * The type Demo. @@ -28,7 +26,7 @@ public class demo { String json = "{\"id\":[\"1\", \"123\", \"1234\", \"1234\"]}"; String json2 = "{\"id\":[\"1\", \"123\", \"1234\"]}"; String json3 = "{\"id\":[\"\", \"1\", \"123\", \"1234\"]}"; - String json4 = "{\"id\":[\"1\", \"123\", \"1234\", null]}"; + //String json4 = "{\"id\":[\"1\", \"123\", \"1234\", null]}"; IDArrayReq id = new ObjectMapper().readValue(json3, IDArrayReq.class); diff --git a/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java b/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java index 19281b76..07ce2ca5 100644 --- a/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java +++ b/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java @@ -1,12 +1,12 @@ package com.dispose.test.dptech; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DeviceCapacity; import com.dispose.common.DisposeDeviceType; import com.dispose.common.ErrorCode; import com.dispose.dispose.DeviceRouter; import com.dispose.dispose.DisposeEntryManager; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.test.Global.InitTestEnvironment; import com.dptech.dispose.DetectionObjectDataForService; import com.dptech.dispose.ProtectionObjectDataForService; import com.fasterxml.jackson.core.JsonProcessingException; diff --git a/src/test/java/com/dispose/test/exception/ExceptionTest.java b/src/test/java/com/dispose/test/exception/ExceptionTest.java index 6dc70721..bebbbee6 100644 --- a/src/test/java/com/dispose/test/exception/ExceptionTest.java +++ b/src/test/java/com/dispose/test/exception/ExceptionTest.java @@ -1,12 +1,12 @@ package com.dispose.test.exception; +import com.dispose.common.ConstValue; import com.dispose.common.ErrorCode; import com.dispose.common.GlobalVar; -import com.dispose.pojo.po.ReturnStatus; -import com.dispose.test.Global.InitTestEnvironment; -import com.dispose.common.ConstValue; import com.dispose.pojo.dto.ProtocolReqDTO; +import com.dispose.pojo.po.ReturnStatus; import com.dispose.pojo.vo.auth.LoginReq; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java b/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java index 025a68b7..f8a5cb32 100644 --- a/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java +++ b/src/test/java/com/dispose/test/manager/UserAccountManagerTest.java @@ -1,10 +1,10 @@ package com.dispose.test.manager; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.manager.UserAccountCacheManager; import com.dispose.pojo.po.MulReturnType; import com.dispose.service.UserAccountService; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; diff --git a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java index a6a3ea06..daf5e71a 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java @@ -1,10 +1,10 @@ package com.dispose.test.mapper; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DisposeDeviceType; import com.dispose.mapper.DisposeDeviceMapper; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java index 00d64f92..382a064e 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java @@ -1,6 +1,5 @@ package com.dispose.test.mapper; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DeviceCapacity; import com.dispose.common.DisposeTaskStatus; import com.dispose.common.FlowDirection; @@ -8,6 +7,7 @@ import com.dispose.mapper.DisposeDeviceMapper; import com.dispose.mapper.DisposeTaskMapper; import com.dispose.mapper.UserAccountMapper; import com.dispose.pojo.vo.common.TaskInfoDetail; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/mapper/UserAccountMapperTest.java b/src/test/java/com/dispose/test/mapper/UserAccountMapperTest.java index 1a8a85de..35f68fc8 100644 --- a/src/test/java/com/dispose/test/mapper/UserAccountMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/UserAccountMapperTest.java @@ -1,9 +1,9 @@ package com.dispose.test.mapper; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ConstValue; import com.dispose.mapper.UserAccountMapper; import com.dispose.pojo.entity.UserAccount; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java b/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java index f534fa39..c49b043c 100644 --- a/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java +++ b/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java @@ -1,11 +1,11 @@ package com.dispose.test.service; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DeviceCapacity; import com.dispose.common.ErrorCode; import com.dispose.mapper.DisposeDeviceMapper; import com.dispose.pojo.po.MulReturnType; import com.dispose.service.DisposeNodeManager; +import com.dispose.test.Global.InitTestEnvironment; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; diff --git a/src/test/java/com/dispose/test/service/TaskServiceTest.java b/src/test/java/com/dispose/test/service/TaskServiceTest.java index 4b68e60c..9b53b9c2 100644 --- a/src/test/java/com/dispose/test/service/TaskServiceTest.java +++ b/src/test/java/com/dispose/test/service/TaskServiceTest.java @@ -1,6 +1,5 @@ package com.dispose.test.service; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.DeviceCapacity; import com.dispose.common.DisposeTaskStatus; import com.dispose.common.ErrorCode; @@ -8,6 +7,7 @@ import com.dispose.common.FlowDirection; import com.dispose.mapper.DisposeTaskMapper; import com.dispose.pojo.vo.common.TaskInfoDetail; import com.dispose.service.TaskService; +import com.dispose.test.Global.InitTestEnvironment; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.FixMethodOrder; diff --git a/src/test/java/com/dispose/test/service/UserAccountServiceTest.java b/src/test/java/com/dispose/test/service/UserAccountServiceTest.java index e5155ffc..19b918c1 100644 --- a/src/test/java/com/dispose/test/service/UserAccountServiceTest.java +++ b/src/test/java/com/dispose/test/service/UserAccountServiceTest.java @@ -1,10 +1,10 @@ package com.dispose.test.service; -import com.dispose.test.Global.InitTestEnvironment; import com.dispose.common.ErrorCode; import com.dispose.pojo.entity.UserAccount; import com.dispose.pojo.po.MulReturnType; import com.dispose.service.UserAccountService; +import com.dispose.test.Global.InitTestEnvironment; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.Before; From 345c4abbdbd52f63639018ba9a03ddfcb12179d1 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Mon, 22 Jun 2020 15:33:47 +0800 Subject: [PATCH 27/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E5=BF=83=E8=B7=B3=E6=A3=80?= =?UTF-8?q?=E6=B5=8B=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/com/dispose/dispose/impl/HaoHanImpl.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index b4dc3636..a043b53a 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -2,6 +2,7 @@ package com.dispose.dispose.impl; import com.dispose.common.DeviceCapacity; import com.dispose.common.ErrorCode; +import com.dispose.common.Http; import com.dispose.common.IPAddrType; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; @@ -124,8 +125,10 @@ public class HaoHanImpl implements DisposeEntryManager { @Override public boolean getDeviceLinkStatus() { try { - // 获取防护对象接口调用成功认为设备心跳正常 - getAllProtectionObject(); + String jsonRequest = "{\"cleanTaskId\":\"-1\"}"; + Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow", + null, + jsonRequest); return true; } catch (Exception ex) { log.error(ex.getMessage()); From 92db13a726379218ab2c870df4e8520c84a2a5d3 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Mon, 22 Jun 2020 17:48:31 +0800 Subject: [PATCH 28/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E9=94=99=E8=AF=AF=E7=A0=81?= =?UTF-8?q?=202.=20=E5=A2=9E=E5=8A=A0=E4=B8=8B=E5=8F=91=E6=B8=85=E6=B4=97?= =?UTF-8?q?=E8=BF=94=E5=9B=9E=E7=B1=BB=203.=20=E5=A2=9E=E5=8A=A0=E6=B5=A9?= =?UTF-8?q?=E7=80=9A=E8=AE=BE=E5=A4=87=E4=B8=8B=E5=8F=91=E6=B8=85=E6=B4=97?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/test/haohan/HaoHanErrorCode.java | 44 +++++ .../test/haohan/HaoHanInterfaceTestCase.java | 154 +++++++++++++++++- .../dispose/test/haohan/sendTowResult.java | 12 ++ 3 files changed, 201 insertions(+), 9 deletions(-) create mode 100644 src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java create mode 100644 src/test/java/com/dispose/test/haohan/sendTowResult.java diff --git a/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java new file mode 100644 index 00000000..eeef8a3e --- /dev/null +++ b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java @@ -0,0 +1,44 @@ +package com.dispose.test.haohan; +/** + * The enum Error code. + * + * @author + */ +public enum HaoHanErrorCode { + /** + * Err ok error code. + */ + ERR_OK("成功"), + /** + * Err whitelist error code. + */ + ERR_WHITELIST("ip已存在清洗ip白名单中,不允许添加!"), + /** + * Err ip format error code. + */ + ERR_DISPOSEIPFORMAT("IP地址格式有误"), + /** + * Err ip format error code. + */ + ERR_DURATIONFORMAT("清洗时长参数格式不正确,请检查!"), + /** + * Err orderFrom format error code. + */ + ERR_ORDERFROMFORMA("厂家信息参数格式不正确,请检查!"), + ; + + private final String errMsg; + + HaoHanErrorCode(String msg) { + this.errMsg = msg; + } + + /** + * Gets msg. + * + * @return the msg + */ + public String getMsg() { + return errMsg; + } +} diff --git a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java index 607f3654..44cccb5c 100644 --- a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java +++ b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java @@ -1,6 +1,8 @@ package com.dispose.test.haohan; import com.dispose.common.Http; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import org.junit.Assert; import org.junit.FixMethodOrder; @@ -10,37 +12,171 @@ import org.junit.runners.MethodSorters; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; +import javax.annotation.Resource; + @RunWith(SpringRunner.class) @Slf4j @SpringBootTest @FixMethodOrder(MethodSorters.NAME_ASCENDING) public class HaoHanInterfaceTestCase { + @Resource + private ObjectMapper objectMapper; + @Test - public void a1_sendTowTest() { - String jsonRequest = "{\"ip\":\"192.168.1.1\",\"orderFrom\":\"haohandata\"}"; - String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendFlow", + public void a1_sendTowWhitelistTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.1\",\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", null, jsonRequest); - log.info("++++++++++++Server Return: [{}]", svrReturn); + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_WHITELIST.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + @Test + public void a2_sendTowWhitelistContainsDurationTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.1\",\"duration\":20, \"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_WHITELIST.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + @Test + public void a3_normalSendTowTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.2\",\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + Assert.assertNotNull(result.getCleanTaskId()); + } else { + Assert.assertNotEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + } + } + + @Test + public void a4_normalSendTowContainsDurationTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.20\",\"duration\":20,\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + Assert.assertNotNull(result.getCleanTaskId()); + } else { + Assert.assertNotEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + } + } + + @Test + public void a5_sendTowIpErrorTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.120\",\"duration\":20,\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_DISPOSEIPFORMAT.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + @Test + public void a6_sendTowDurationErrorTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.20\",\"duration\":\"20\",\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_DURATIONFORMAT.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + @Test + public void a7_sendTowOrderFromErrorTest() throws JsonProcessingException { + String jsonRequest = "{\"ip\":\"192.168.1.20\",\"duration\":20,\"orderFrom\":123}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/sendTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_ORDERFROMFORMA.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + + @Test + public void b1_delTowTest() { + String jsonRequest = "{\"cleanTaskId\":105,\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + log.info("ServerReturn length: [{}]", svrReturn.length()); Assert.assertNotNull(svrReturn); Assert.assertNotEquals(svrReturn.length(), 0); } @Test - public void a2_delTowTest() { - String jsonRequest = "{\"cleanTaskId\":12345,\"orderFrom\":\"haohandata\"}"; - String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delFlow", + public void b2_delTowCleanTaskIdErrorTest() { + String jsonRequest = "{\"cleanTaskId\":\"105\",\"orderFrom\":\"hangyan\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", null, jsonRequest); - log.info("+++++++++++Server Return: [{}]", svrReturn); + log.info("Server Return: [{}]", svrReturn); + log.info("ServerReturn length: [{}]", svrReturn.length()); Assert.assertNotNull(svrReturn); Assert.assertNotEquals(svrReturn.length(), 0); } @Test - public void a3_delTowTest() { + public void b3_delTowOrderFromErrorTest() { + String jsonRequest = "{\"cleanTaskId\":\"105\",\"orderFrom\":123}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + log.info("ServerReturn length: [{}]", svrReturn.length()); + Assert.assertNotNull(svrReturn); + Assert.assertNotEquals(svrReturn.length(), 0); + } + + @Test + public void b2_delTowTest() { String jsonRequest = "{\"orderFrom\":\"haohandata\"}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", null, diff --git a/src/test/java/com/dispose/test/haohan/sendTowResult.java b/src/test/java/com/dispose/test/haohan/sendTowResult.java new file mode 100644 index 00000000..b82b29c2 --- /dev/null +++ b/src/test/java/com/dispose/test/haohan/sendTowResult.java @@ -0,0 +1,12 @@ +package com.dispose.test.haohan; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class sendTowResult { + private Integer state; + private String msg; + private Integer cleanTaskId; +} From 2c3eee5f574843f2c81a493f4065ca0f3b835c75 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 23 Jun 2020 11:17:13 +0800 Subject: [PATCH 29/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B8=85=E6=B4=97=E4=B8=ADIP=E7=9A=84=E6=B5=81=E9=87=8F?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E7=9A=84=E7=B1=BB=202.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E9=94=99=E8=AF=AF=E7=A0=81?= =?UTF-8?q?=203.=20=E5=A2=9E=E5=8A=A0=E5=8F=96=E6=B6=88=E6=B8=85=E6=B4=97?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E5=92=8C=E8=8E=B7=E5=8F=96=E6=B8=85=E6=B4=97?= =?UTF-8?q?=E4=B8=ADIP=E7=9A=84=E6=B5=81=E9=87=8F=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E7=9A=84=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/test/haohan/HaoHanErrorCode.java | 8 +++ .../test/haohan/HaoHanInterfaceTestCase.java | 70 ++++++++++++++----- .../dispose/test/haohan/allIpFlowData.java | 14 ++++ .../dispose/test/haohan/allIpFlowResult.java | 15 ++++ 4 files changed, 89 insertions(+), 18 deletions(-) create mode 100644 src/test/java/com/dispose/test/haohan/allIpFlowData.java create mode 100644 src/test/java/com/dispose/test/haohan/allIpFlowResult.java diff --git a/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java index eeef8a3e..7a34446b 100644 --- a/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java +++ b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java @@ -25,6 +25,14 @@ public enum HaoHanErrorCode { * Err orderFrom format error code. */ ERR_ORDERFROMFORMA("厂家信息参数格式不正确,请检查!"), + /** + * Err cleanTaskId format error code. + */ + ERR_CLEANTASKIDFORMA("清洗任务id参数格式不正确,请检查!"), + /** + * Err no running task error code. + */ + ERR_NORUNNINGTASK("没有正在清洗的ip"), ; private final String errMsg; diff --git a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java index 44cccb5c..3256b287 100644 --- a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java +++ b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java @@ -137,54 +137,88 @@ public class HaoHanInterfaceTestCase { @Test - public void b1_delTowTest() { + public void b1_delTowTest() throws JsonProcessingException { String jsonRequest = "{\"cleanTaskId\":105,\"orderFrom\":\"hangyan\"}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", null, jsonRequest); log.info("Server Return: [{}]", svrReturn); - log.info("ServerReturn length: [{}]", svrReturn.length()); - Assert.assertNotNull(svrReturn); - Assert.assertNotEquals(svrReturn.length(), 0); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + } } @Test - public void b2_delTowCleanTaskIdErrorTest() { + public void b2_delTowCleanTaskIdErrorTest() throws JsonProcessingException { String jsonRequest = "{\"cleanTaskId\":\"105\",\"orderFrom\":\"hangyan\"}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", null, jsonRequest); log.info("Server Return: [{}]", svrReturn); - log.info("ServerReturn length: [{}]", svrReturn.length()); - Assert.assertNotNull(svrReturn); - Assert.assertNotEquals(svrReturn.length(), 0); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_CLEANTASKIDFORMA.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); } @Test - public void b3_delTowOrderFromErrorTest() { - String jsonRequest = "{\"cleanTaskId\":\"105\",\"orderFrom\":123}"; + public void b3_delTowOrderFromErrorTest() throws JsonProcessingException { + String jsonRequest = "{\"cleanTaskId\":105,\"orderFrom\":123}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/delTow", null, jsonRequest); log.info("Server Return: [{}]", svrReturn); - log.info("ServerReturn length: [{}]", svrReturn.length()); - Assert.assertNotNull(svrReturn); - Assert.assertNotEquals(svrReturn.length(), 0); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_ORDERFROMFORMA.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); } @Test - public void b2_delTowTest() { - String jsonRequest = "{\"orderFrom\":\"haohandata\"}"; + public void c1_delTowTest() throws JsonProcessingException { + String jsonRequest = "{\"orderFrom\":\"hangyan\"}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", null, jsonRequest); - log.info("+++++++++++Server Return: [{}]", svrReturn); - Assert.assertNotNull(svrReturn); - Assert.assertNotEquals(svrReturn.length(), 0); + log.info("Server Return: [{}]", svrReturn); + allIpFlowResult result = objectMapper.readValue(svrReturn, allIpFlowResult.class); + + Assert.assertNotNull(result); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + for (allIpFlowData data : result.getData() + ) { + Assert.assertNotNull(data.getIp()); + } + } else { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_NORUNNINGTASK.getMsg()); + } + } + + @Test + public void c2_delTowTest() throws JsonProcessingException { + String jsonRequest = "{\"orderFrom\":123}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_ORDERFROMFORMA.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); } } diff --git a/src/test/java/com/dispose/test/haohan/allIpFlowData.java b/src/test/java/com/dispose/test/haohan/allIpFlowData.java new file mode 100644 index 00000000..6ffd4860 --- /dev/null +++ b/src/test/java/com/dispose/test/haohan/allIpFlowData.java @@ -0,0 +1,14 @@ +package com.dispose.test.haohan; + +import lombok.Getter; +import lombok.Setter; + +@Getter +@Setter +public class allIpFlowData { + String ip; //ip地址 + Double inFlow; //输入流量 + Integer inPackets; //输入包数 + Double outFlow; //输出流量 + Integer outPackets; //输出包数 +} diff --git a/src/test/java/com/dispose/test/haohan/allIpFlowResult.java b/src/test/java/com/dispose/test/haohan/allIpFlowResult.java new file mode 100644 index 00000000..c42de6ce --- /dev/null +++ b/src/test/java/com/dispose/test/haohan/allIpFlowResult.java @@ -0,0 +1,15 @@ +package com.dispose.test.haohan; + +import lombok.Getter; +import lombok.Setter; + +import java.util.List; + +@Getter +@Setter +public class allIpFlowResult { + private Integer state; + private String msg; + private List data; +} + From 59f5552c4d73fe2d9c04f7acb3119b2b612d9423 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 23 Jun 2020 15:35:21 +0800 Subject: [PATCH 30/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=B8=85=E6=B4=97=E4=BB=BB=E5=8A=A1=E7=9A=84?= =?UTF-8?q?=E6=B5=81=E9=87=8F=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E5=92=8C?= =?UTF-8?q?=E8=8E=B7=E5=8F=96=E6=B8=85=E6=B4=97=E4=BB=BB=E5=8A=A1=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E4=BF=A1=E6=81=AF=E6=8E=A5=E5=8F=A3=E7=9A=84=E6=B5=8B?= =?UTF-8?q?=E8=AF=95=E7=94=A8=E4=BE=8B=202.=20=E5=A2=9E=E5=8A=A0=E8=BF=AA?= =?UTF-8?q?=E6=99=AE=E8=AE=BE=E5=A4=87=E9=94=99=E8=AF=AF=E7=A0=81=203.=20?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E4=B8=8B=E5=8F=91=E6=B8=85=E6=B4=97=E8=BF=94?= =?UTF-8?q?=E5=9B=9E=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/test/haohan/HaoHanErrorCode.java | 8 ++ .../test/haohan/HaoHanInterfaceTestCase.java | 74 ++++++++++++++++++- .../dispose/test/haohan/sendTowResult.java | 1 + 3 files changed, 79 insertions(+), 4 deletions(-) diff --git a/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java index 7a34446b..f9ff97c7 100644 --- a/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java +++ b/src/test/java/com/dispose/test/haohan/HaoHanErrorCode.java @@ -33,6 +33,14 @@ public enum HaoHanErrorCode { * Err no running task error code. */ ERR_NORUNNINGTASK("没有正在清洗的ip"), + /** + * Err task does not existed or task is running error code. + */ + ERR_TASKNOEND("请检查清洗任务是否存在或清洗状态是否为结束!"), + /** + * Err task does not existed error code. + */ + ERR_NOTASK("该清洗任务不存在!"), ; private final String errMsg; diff --git a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java index 3256b287..6ee07f2c 100644 --- a/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java +++ b/src/test/java/com/dispose/test/haohan/HaoHanInterfaceTestCase.java @@ -185,7 +185,7 @@ public class HaoHanInterfaceTestCase { } @Test - public void c1_delTowTest() throws JsonProcessingException { + public void c1_allIpFlowTest() throws JsonProcessingException { String jsonRequest = "{\"orderFrom\":\"hangyan\"}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", null, @@ -207,18 +207,84 @@ public class HaoHanInterfaceTestCase { } @Test - public void c2_delTowTest() throws JsonProcessingException { + public void c2_allIpFlowTest() throws JsonProcessingException { String jsonRequest = "{\"orderFrom\":123}"; String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/allIpFlow", null, jsonRequest); + log.info("Server Return: [{}]", svrReturn); + allIpFlowResult result = objectMapper.readValue(svrReturn, allIpFlowResult.class); + + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_ORDERFROMFORMA.getMsg()); + Assert.assertEquals(result.getState(), Integer.valueOf(1)); + } + + @Test + public void d1_cleanTaskFlowTest() throws JsonProcessingException { + String jsonRequest = "{\"cleanTaskId\":119}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + allIpFlowResult result = objectMapper.readValue(svrReturn, allIpFlowResult.class); + + Assert.assertNotNull(result); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + for (allIpFlowData data : result.getData() + ) { + Assert.assertNotNull(data.getIp()); + } + } else { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_TASKNOEND.getMsg()); + } + } + + @Test + public void d2_cleanTaskFlowTest() throws JsonProcessingException { + String jsonRequest = "{\"cleanTaskId\":\"abc\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + allIpFlowResult result = objectMapper.readValue(svrReturn, allIpFlowResult.class); + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_CLEANTASKIDFORMA.getMsg()); + } + + @Test + public void e1_getCleanTaskStateTest() throws JsonProcessingException { + String jsonRequest = "{\"cleanTaskId\":119}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/getCleanTaskState", + null, + jsonRequest); + log.info("Server Return: [{}]", svrReturn); sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); Assert.assertNotNull(result); - Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_ORDERFROMFORMA.getMsg()); - Assert.assertEquals(result.getState(), Integer.valueOf(1)); + if (result.getState() == 0) { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_NOTASK.getMsg()); + } + } + + @Test + public void e2_getCleanTaskStateTest() throws JsonProcessingException { + String jsonRequest = "{\"cleanTaskId\":\"adb\"}"; + String svrReturn = Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/getCleanTaskState", + null, + jsonRequest); + + log.info("Server Return: [{}]", svrReturn); + sendTowResult result = objectMapper.readValue(svrReturn, sendTowResult.class); + Assert.assertNotNull(result); + Assert.assertEquals(result.getMsg(), HaoHanErrorCode.ERR_CLEANTASKIDFORMA.getMsg()); } } diff --git a/src/test/java/com/dispose/test/haohan/sendTowResult.java b/src/test/java/com/dispose/test/haohan/sendTowResult.java index b82b29c2..9b88a354 100644 --- a/src/test/java/com/dispose/test/haohan/sendTowResult.java +++ b/src/test/java/com/dispose/test/haohan/sendTowResult.java @@ -9,4 +9,5 @@ public class sendTowResult { private Integer state; private String msg; private Integer cleanTaskId; + private Integer cleanTaskState; } From 70da55edff398e435fb98bba41c77521ee26db89 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Sun, 28 Jun 2020 15:48:32 +0800 Subject: [PATCH 31/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0task?= =?UTF-8?q?=5Finfo=E6=95=B0=E6=8D=AE=E5=BA=93=202.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93Mapper=203.=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=B9=BF=E6=92=AD=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E5=88=B0?= =?UTF-8?q?=E6=89=80=E6=9C=89=E8=AE=BE=E5=A4=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/IPAddrType.java | 3 +- .../controller/DisposeNodeInfoController.java | 9 +- .../controller/DisposeTaskController.java | 9 +- .../com/dispose/dispose/impl/HaoHanImpl.java | 12 +- .../com/dispose/mapper/DisposeTaskMapper.java | 4 +- .../com/dispose/mapper/TaskInfoMapper.java | 43 +++++++ .../com/dispose/pojo/vo/common/TaskInfo.java | 35 ++++++ .../pojo/vo/common/TaskInfoDetail.java | 2 +- .../dispose/service/DisposeNodeManager.java | 2 +- .../service/impl/DisposeNodeManagerImpl.java | 18 ++- .../dispose/service/impl/TaskServiceImpl.java | 115 +++++++++--------- .../com/dispose/task/TaskManagerTask.java | 4 +- src/main/resources/mappers/DisposeTask.xml | 4 +- src/main/resources/mappers/TaskInfoMapper.xml | 32 +++++ .../java/com/dispose/test/debug/demo.java | 1 + .../test/mapper/DisposeTaskMapperTest.java | 8 +- 16 files changed, 214 insertions(+), 87 deletions(-) create mode 100644 src/main/java/com/dispose/mapper/TaskInfoMapper.java create mode 100644 src/main/java/com/dispose/pojo/vo/common/TaskInfo.java create mode 100644 src/main/resources/mappers/TaskInfoMapper.xml diff --git a/src/main/java/com/dispose/common/IPAddrType.java b/src/main/java/com/dispose/common/IPAddrType.java index 7c07b84e..4e5ff62e 100644 --- a/src/main/java/com/dispose/common/IPAddrType.java +++ b/src/main/java/com/dispose/common/IPAddrType.java @@ -64,7 +64,8 @@ public enum IPAddrType { public static boolean ipInRange(String rangeIp, String ipAddr) throws AddressStringException { final int numIp = 2; - if (rangeIp.equals(ipAddr)) { + // 范围为空字符串或者与IP相同时,返回真 + if (rangeIp.length() == 0 || rangeIp.equals(ipAddr)) { return true; } diff --git a/src/main/java/com/dispose/controller/DisposeNodeInfoController.java b/src/main/java/com/dispose/controller/DisposeNodeInfoController.java index 680bd6c0..b9829cbd 100644 --- a/src/main/java/com/dispose/controller/DisposeNodeInfoController.java +++ b/src/main/java/com/dispose/controller/DisposeNodeInfoController.java @@ -41,7 +41,6 @@ import javax.annotation.Resource; import java.util.ArrayList; import java.util.Arrays; import java.util.List; -import java.util.Objects; import java.util.stream.Collectors; /** @@ -583,12 +582,12 @@ public class DisposeNodeInfoController { taskData.setMessage(ErrorCode.ERR_NOSUCHTASK.getMsg()); } else { runTasks.forEach(k -> { - int diff = Helper.getTimestampDiff(k.getBeginTime(), k.getPlanEndTime()); + int diff = Helper.getTimestampDiff(k.getCreateTime(), k.getPlanEndTime()); TaskInfoData taskInfoData = TaskInfoData.builder() .taskId(k.getId().toString()) .type(k.getType()) - .startTime(Helper.getTimestampSecond(k.getBeginTime())) + .startTime(Helper.getTimestampSecond(k.getCreateTime())) .disposeTime(diff) .disposeIp(k.getDisposeIp()) .flowAttack(0) @@ -672,12 +671,12 @@ public class DisposeNodeInfoController { taskData.setMessage(ErrorCode.ERR_NOSUCHTASK.getMsg()); } else { runTasks.forEach(k -> { - int diff = Helper.getTimestampDiff(k.getBeginTime(), k.getPlanEndTime()); + int diff = Helper.getTimestampDiff(k.getCreateTime(), k.getPlanEndTime()); TaskInfoData taskInfoData = TaskInfoData.builder() .taskId(k.getId().toString()) .type(k.getType()) - .startTime(Helper.getTimestampSecond(k.getBeginTime())) + .startTime(Helper.getTimestampSecond(k.getCreateTime())) .disposeTime(diff) .disposeIp(k.getDisposeIp()) .currentStatus(taskService.taskIsRunning(k) ? 0 : 1) diff --git a/src/main/java/com/dispose/controller/DisposeTaskController.java b/src/main/java/com/dispose/controller/DisposeTaskController.java index f17189b1..a9317846 100644 --- a/src/main/java/com/dispose/controller/DisposeTaskController.java +++ b/src/main/java/com/dispose/controller/DisposeTaskController.java @@ -44,7 +44,6 @@ import java.time.ZoneId; import java.time.format.DateTimeFormatter; import java.util.Arrays; import java.util.List; -import java.util.Objects; import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; @@ -515,11 +514,11 @@ public class DisposeTaskController { taskService.getNodeAllRunningTask(v.getId()).forEach(k -> { if (v.getType().equals(reqInfo.getType()) || reqInfo.getType() == DeviceCapacity.ALLCAPACITY.getCode()) { - int diff = Helper.getTimestampDiff(k.getBeginTime(), k.getPlanEndTime()); + int diff = Helper.getTimestampDiff(k.getCreateTime(), k.getPlanEndTime()); TaskInfoData taskInfoData = TaskInfoData.builder() .taskId(k.getId().toString()) .type(k.getType()) - .startTime(Helper.getTimestampSecond(k.getBeginTime())) + .startTime(Helper.getTimestampSecond(k.getCreateTime())) .disposeTime(diff) .disposeIp(k.getDisposeIp()) .flowAttack(0) @@ -599,12 +598,12 @@ public class DisposeTaskController { .collect(Collectors.toList()); valuableData.forEach(v -> { - int diff = Helper.getTimestampDiff(v.getBeginTime(), v.getPlanEndTime()); + int diff = Helper.getTimestampDiff(v.getCreateTime(), v.getPlanEndTime()); TaskInfoData taskInfoData = TaskInfoData.builder() .taskId(v.getId().toString()) .type(v.getType()) - .startTime(Helper.getTimestampSecond(v.getBeginTime())) + .startTime(Helper.getTimestampSecond(v.getCreateTime())) .disposeTime(diff / 60) .disposeIp(v.getDisposeIp()) .attackType(Helper.attackStringToArray(v.getAttackType())) diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index a043b53a..868c88d6 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -20,13 +20,15 @@ import java.util.List; @Slf4j public class HaoHanImpl implements DisposeEntryManager { + private String deviceAddress; + /** * Instantiates a new Hao han. * * @param ipAddr the ip addr */ public HaoHanImpl(String ipAddr) { - + this(ipAddr, IPAddrType.IPV4_TYPE); } /** @@ -36,7 +38,8 @@ public class HaoHanImpl implements DisposeEntryManager { * @param type the type */ public HaoHanImpl(String ipAddr, IPAddrType type) { - + //http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow + deviceAddress = "http://" + ipAddr + "/DDoSClean/clean"; } /** @@ -109,7 +112,7 @@ public class HaoHanImpl implements DisposeEntryManager { .capacity(DeviceCapacity.CLEANUP.getCode()) .tolFlowCapacity(0) // IPv4范围 - .protectIpV4(new String[] {"0.0.0.0-255.255.255.255"}) + .protectIpV4(new String[] {""}) // IPv6范围 .protectIpV6(new String[] {""}) .build()); @@ -126,7 +129,8 @@ public class HaoHanImpl implements DisposeEntryManager { public boolean getDeviceLinkStatus() { try { String jsonRequest = "{\"cleanTaskId\":\"-1\"}"; - Http.postJson("http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow", + //"http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow" + Http.postJson(deviceAddress + "cleanTaskFlow", null, jsonRequest); return true; diff --git a/src/main/java/com/dispose/mapper/DisposeTaskMapper.java b/src/main/java/com/dispose/mapper/DisposeTaskMapper.java index bbbea036..6d20cb20 100644 --- a/src/main/java/com/dispose/mapper/DisposeTaskMapper.java +++ b/src/main/java/com/dispose/mapper/DisposeTaskMapper.java @@ -53,7 +53,7 @@ public interface DisposeTaskMapper extends Mapper, * @param id the id * @return the task info by id */ - TaskInfoDetail getTaskInfoById(Long id); + TaskInfoDetail getTaskById(Long id); /** * Gets all task by dispose ip. @@ -108,7 +108,7 @@ public interface DisposeTaskMapper extends Mapper, * @param type the type * @return the task by task info */ - List getTaskByTaskInfo( + List getTaskByTaskDetail( @Param("devId") Long devId, @Param("userId") Long userId, @Param("ipAddr") String ipAddr, diff --git a/src/main/java/com/dispose/mapper/TaskInfoMapper.java b/src/main/java/com/dispose/mapper/TaskInfoMapper.java new file mode 100644 index 00000000..2272bc9c --- /dev/null +++ b/src/main/java/com/dispose/mapper/TaskInfoMapper.java @@ -0,0 +1,43 @@ +package com.dispose.mapper; + + +import com.dispose.pojo.vo.common.TaskInfo; + +/** + * The interface Task info mapper. + * + * @author + */ +public interface TaskInfoMapper { + /** + * Add new task info. + * + * @param taskInfo the task info + */ + void addNewTaskInfo(TaskInfo taskInfo); + + /** + * Gets task info. + * + * @param taskId the task id + * @param deviceId the device id + * @return the task info + */ + TaskInfo getTaskInfo(Long taskId, Long deviceId); + + /** + * Gets task info by task id. + * + * @param taskId the task id + * @return the task info by task id + */ + TaskInfo getTaskInfoByTaskId(Long taskId); + + /** + * Change task info status. + * + * @param id the id + * @param status the status + */ + void changeTaskInfoStatus(Long id, Long status); +} diff --git a/src/main/java/com/dispose/pojo/vo/common/TaskInfo.java b/src/main/java/com/dispose/pojo/vo/common/TaskInfo.java new file mode 100644 index 00000000..af3c49ed --- /dev/null +++ b/src/main/java/com/dispose/pojo/vo/common/TaskInfo.java @@ -0,0 +1,35 @@ +package com.dispose.pojo.vo.common; + +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; +import tk.mybatis.mapper.annotation.NameStyle; +import tk.mybatis.mapper.code.Style; + +import javax.persistence.Id; +import javax.persistence.Table; + +/** + * The type Task info. + * + * @author + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@Table(name = "task_info") +@NameStyle(Style.normal) +public class TaskInfo { + private static final long serialVersionUID = 1L; + + @Id + private Long id; + private Long taskId; + private Long deviceId; + private String beginTime; + private String endTime; + private Long externId; + private Long status; +} diff --git a/src/main/java/com/dispose/pojo/vo/common/TaskInfoDetail.java b/src/main/java/com/dispose/pojo/vo/common/TaskInfoDetail.java index ab5412f3..f17bf900 100644 --- a/src/main/java/com/dispose/pojo/vo/common/TaskInfoDetail.java +++ b/src/main/java/com/dispose/pojo/vo/common/TaskInfoDetail.java @@ -31,7 +31,7 @@ public class TaskInfoDetail implements Serializable { private Long accountId; private Integer type; private String disposeIp; - private String beginTime; + private String createTime; private String planEndTime; private String endTime; private Integer flowDirection; diff --git a/src/main/java/com/dispose/service/DisposeNodeManager.java b/src/main/java/com/dispose/service/DisposeNodeManager.java index 157cd5cb..4e8a86b2 100644 --- a/src/main/java/com/dispose/service/DisposeNodeManager.java +++ b/src/main/java/com/dispose/service/DisposeNodeManager.java @@ -77,5 +77,5 @@ public interface DisposeNodeManager { * @param capacity the capacity * @return the dispose device */ - DisposeDevice getDisposeDevice(String ipAddr, DeviceCapacity capacity); + List getDisposeDevice(String ipAddr, DeviceCapacity capacity); } diff --git a/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java b/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java index b73d064c..d1c43ca1 100644 --- a/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java +++ b/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java @@ -256,8 +256,15 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager { * @return the dispose device */ @Override - public DisposeDevice getDisposeDevice(String ipAddr, DeviceCapacity capacity) { + public List getDisposeDevice(String ipAddr, DeviceCapacity capacity) { + List devList = new ArrayList<>(); + for (DisposeDevice dev : disposeDevMap.values()) { + // 判断设备是否在线 + if (dev.getLinkStatus() != 1) { + continue; + } + // 判断当前设备是否支持处置能力 List capList = dev.getDevCaps() .stream() @@ -267,11 +274,14 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager { // 设备是否支持处置该IP的 if (capList.stream().anyMatch(k -> isIpInRange(k, ipAddr))) { log.info("{} with {} used device {}:{}", ipAddr, capacity.getReadme(), dev.getId(), dev.getIpAddr()); - return dev; + devList.add(dev); } } - log.error("No such device to process {} of {}", ipAddr, capacity.getReadme()); - return null; + if (devList.size() == 0) { + log.error("No such device to process {} of {}", ipAddr, capacity.getReadme()); + } + + return devList; } } diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 8ef9b5d2..13201538 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -47,19 +47,23 @@ public class TaskServiceImpl implements TaskService { @Resource private DisposeNodeManager disposeNodeManager; - private DisposeEntryManager getDisposeDeviceHandle(String disposeIp, int devCapType) { + private List getDisposeDeviceHandle(String disposeIp, int devCapType) { + List devEntry = new ArrayList<>(); - DisposeDevice dev = getDisposeNode(disposeIp, devCapType); + List dev = getDisposeNode(disposeIp, devCapType); + // 判断是否有支持处置该IP的能力 if (dev == null) { log.info("No dispose device handle: disposeIp:{}, devCapType:{}", disposeIp, devCapType); - return null; + return devEntry; } - return DeviceRouter.deviceRouterFactory(dev.getType(), dev.getIpAddr()); + dev.forEach(v -> devEntry.add(DeviceRouter.deviceRouterFactory(v.getType(), v.getIpAddr()))); + + return devEntry; } - private DisposeDevice getDisposeNode(String disposeIp, int devCapType) { + private List getDisposeNode(String disposeIp, int devCapType) { DeviceCapacity cap; try { @@ -105,34 +109,29 @@ public class TaskServiceImpl implements TaskService { */ @Override public MulReturnType createTask(TaskInfoDetail task) { - DisposeDevice disposeDevice; + List disposeDevice = new ArrayList<>(); Long taskId = task.getDeviceId(); // 首先查找有没有能处置这个ip的能力节点 // 没有指定处置能力节点的情况 if (taskId == null || taskId < 0) { disposeDevice = getDisposeNode(task.getDisposeIp(), task.getType()); - - //处置IP不在范围内 - if(disposeDevice == null){ - return MulReturnType.builder() - .firstParam(ErrorCode.ERR_UNABLEDISPOSEIP) - .secondParam(-1L) - .build(); - } + task.setDeviceId(-1L); } else { // 指定了处置能力节点的情况 - disposeDevice = disposeNodeManager.getDisposeDeviceById(taskId); + DisposeDevice dev = disposeNodeManager.getDisposeDeviceById(taskId); + if (dev != null) { + disposeDevice.add(dev); + task.setDeviceId(dev.getId()); + } } - if (disposeDevice == null) { + if (disposeDevice.size() == 0) { log.error("No such device to dispose this task: devId:{}, disposeIp:{}, type:{}", task.getDeviceId(), task.getDisposeIp(), task.getType()); return MulReturnType.builder() .firstParam(ErrorCode.ERR_NOSUCHDEVICE) .secondParam(-1L) .build(); - } else { - task.setDeviceId(disposeDevice.getId()); } // 查询当前是否有相同能力节点,相同用户,相同处置IP的且正在执行的处置任务,如果存在则忽略该次任务(依照产品需求) @@ -157,9 +156,9 @@ public class TaskServiceImpl implements TaskService { // 将该任务写入数据库和缓存,等到定时任务真正启动该任务 disposeTaskMapper.addNewTask(task); - task.setBeginTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); + task.setCreateTime(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); - TaskInfoDetail cacheTask = disposeTaskMapper.getTaskInfoById(task.getId()); + TaskInfoDetail cacheTask = disposeTaskMapper.getTaskById(task.getId()); ErrorCode err = taskCacheManager.addTask(cacheTask); @@ -188,9 +187,9 @@ public class TaskServiceImpl implements TaskService { } // 再次检查是否有处置设备能够处置该任务 - DisposeEntryManager dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); + List dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); - if (dp == null) { + if (dp.size() == 0) { log.error("No such device to dispose this task: disposeId:{}, type:{}", task.getDisposeIp(), task.getType()); return ErrorCode.ERR_NOSUCHDEVICE; } @@ -200,25 +199,27 @@ public class TaskServiceImpl implements TaskService { taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); - // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) - .whenComplete((v, ex) -> { - if (ex != null) { - log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); - // 执行任务失败恢复缓存中的任务状态 - taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); - } else { - if (v != ErrorCode.ERR_OK) { + dp.forEach(k -> { + // 异步启动处置任务 + CompletableFuture.supplyAsync(() -> k.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + .whenComplete((v, ex) -> { + if (ex != null) { + log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); // 执行任务失败恢复缓存中的任务状态 - taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); - log.error("Start task: taskId:{}, disposeIp:{}, error:{}", taskId, task.getDisposeIp(), v.getMsg()); + //taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); } else { - // 任务执行完成后更新数据库处置任务状态 - disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); - log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); + if (v != ErrorCode.ERR_OK) { + // 执行任务失败恢复缓存中的任务状态 + //taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); + log.error("Start task: taskId:{}, disposeIp:{}, error:{}", taskId, task.getDisposeIp(), v.getMsg()); + } else { + // 任务执行完成后更新数据库处置任务状态 + //disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); + log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); + } } - } - }); + }); + }); } return err; @@ -236,9 +237,9 @@ public class TaskServiceImpl implements TaskService { TaskInfoDetail task = taskCacheManager.getTaskById(taskId); if (task != null) { - DisposeEntryManager dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); + List dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); - if (dp == null) { + if (dp.size() == 0) { log.error("No such device to dispose this task: disposeId:{}, type:{}", task.getDisposeIp(), task.getType()); return ErrorCode.ERR_NOSUCHDEVICE; } @@ -252,25 +253,27 @@ public class TaskServiceImpl implements TaskService { return err; } - // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) - .whenComplete((v, ex) -> { - if (ex != null) { - // 恢复缓存中任务状态到先前状态 - taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); - } else { - if (v != ErrorCode.ERR_OK) { + dp.forEach(k -> { + // 异步启动处置任务 + CompletableFuture.supplyAsync(() -> k.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + .whenComplete((v, ex) -> { + if (ex != null) { // 恢复缓存中任务状态到先前状态 taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, v.getMsg()); + log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); } else { - // 任务执行完成后更新数据库处置任务状态 - finishTask(taskId); - log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); + if (v != ErrorCode.ERR_OK) { + // 恢复缓存中任务状态到先前状态 + taskCacheManager.upgradeTaskStatus(taskId, prdStatus); + log.error("Stop task: taskId:{}, error:{}", taskId, v.getMsg()); + } else { + // 任务执行完成后更新数据库处置任务状态 + finishTask(taskId); + log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); + } } - } - }); + }); + }); } else { log.error("No such task: taskId:{}", taskId); return ErrorCode.ERR_NOSUCHTASK; @@ -293,7 +296,7 @@ public class TaskServiceImpl implements TaskService { if (err == ErrorCode.ERR_OK) { // 设置数据库任务状态为完成状态 disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_FINISH.getCode()); - Integer currentStatus = disposeTaskMapper.getTaskInfoById(taskId).getCurrentStatus(); + Integer currentStatus = disposeTaskMapper.getTaskById(taskId).getCurrentStatus(); log.info("taskId:{}, currentStatus:{}", taskId, currentStatus); // 移除缓存中的任务信息 taskCacheManager.removeTask(taskId); diff --git a/src/main/java/com/dispose/task/TaskManagerTask.java b/src/main/java/com/dispose/task/TaskManagerTask.java index e260484e..cc642f79 100644 --- a/src/main/java/com/dispose/task/TaskManagerTask.java +++ b/src/main/java/com/dispose/task/TaskManagerTask.java @@ -39,7 +39,7 @@ public class TaskManagerTask { // 判断是否存在正在运行的过期的任务,如果存在则结束该任务 if(taskService.taskIsExpired(taskData) && taskService.taskIsRunning(taskData)) { log.info("Finish expired task {}:{} begin at {}", - taskData.getId(), taskData.getDisposeIp(), taskData.getBeginTime()); + taskData.getId(), taskData.getDisposeIp(), taskData.getCreateTime()); taskService.stopTask(taskData.getId()); it.remove(); continue; @@ -53,7 +53,7 @@ public class TaskManagerTask { // 判断是否有新建任务,如果有的话启动新建的处置任务 if (taskData.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode()) { log.info("Start task {}:{} of {}", - taskData.getId(), taskData.getDisposeIp(), taskData.getBeginTime()); + taskData.getId(), taskData.getDisposeIp(), taskData.getCreateTime()); if (taskService.startTask(taskData.getId()) != ErrorCode.ERR_OK) { taskData.setRetryTimes(taskData.getRetryTimes() + 1); log.error("startTask Task {}:{} error\n", taskData.getId(), taskData.getDisposeIp()); diff --git a/src/main/resources/mappers/DisposeTask.xml b/src/main/resources/mappers/DisposeTask.xml index 4c4d2cfb..82934bb1 100644 --- a/src/main/resources/mappers/DisposeTask.xml +++ b/src/main/resources/mappers/DisposeTask.xml @@ -37,7 +37,7 @@ WHERE id = #{id, jdbcType=INTEGER} - SELECT * FROM dispose_task WHERE id = #{id, jdbcType=INTEGER} @@ -78,7 +78,7 @@ WHERE currentStatus = #{status, jdbcType=INTEGER} - SELECT * FROM dispose_task WHERE deviceId = #{devId, jdbcType=INTEGER} diff --git a/src/main/resources/mappers/TaskInfoMapper.xml b/src/main/resources/mappers/TaskInfoMapper.xml new file mode 100644 index 00000000..1cb00467 --- /dev/null +++ b/src/main/resources/mappers/TaskInfoMapper.xml @@ -0,0 +1,32 @@ + + + + + INSERT IGNORE INTO task_info(taskId, deviceId, externId) + VALUES (#{taskId}, #{deviceId}, #{externId}) + + + + + + + + UPDATE + task_info + SET + status = #{status, jdbcType=INTEGER} + WHERE + id = #{id, jdbcType=INTEGER} + + + \ No newline at end of file diff --git a/src/test/java/com/dispose/test/debug/demo.java b/src/test/java/com/dispose/test/debug/demo.java index cc8d66c8..fa530463 100644 --- a/src/test/java/com/dispose/test/debug/demo.java +++ b/src/test/java/com/dispose/test/debug/demo.java @@ -52,5 +52,6 @@ public class demo { Assert.assertTrue(IPAddrType.ipInRange("192.168.0.30", "192.168.0.30")); Assert.assertTrue(IPAddrType.ipInRange("192.168.0.40-192.168.0.40", "192.168.0.40")); Assert.assertTrue(IPAddrType.ipInRange("0.0.0.0-255.255.255.255", "192.168.0.30")); + Assert.assertTrue(IPAddrType.ipInRange("", "192.168.0.30")); } } diff --git a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java index 382a064e..00fb7fc7 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java @@ -97,7 +97,7 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { disposeTaskMapper.addNewTask(taskData); Assert.assertNotEquals(java.util.Optional.ofNullable(taskData.getId()), -1L); - Assert.assertNotNull(disposeTaskMapper.getTaskInfoById(taskData.getId())); + Assert.assertNotNull(disposeTaskMapper.getTaskById(taskData.getId())); } /** @@ -107,7 +107,7 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { public void t99_removeTaskTest() { disposeTaskMapper.selectAll().forEach(v -> { disposeTaskMapper.removeTaskById(v.getId()); - Assert.assertNull(disposeTaskMapper.getTaskInfoById(v.getId())); + Assert.assertNull(disposeTaskMapper.getTaskById(v.getId())); }); } @@ -135,7 +135,7 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { @Test public void t3_getTaskInfoByIdTest() { disposeTaskMapper.selectAll().forEach(v -> { - TaskInfoDetail taskInfo = disposeTaskMapper.getTaskInfoById(v.getId()); + TaskInfoDetail taskInfo = disposeTaskMapper.getTaskById(v.getId()); Assert.assertNotNull(taskInfo); Assert.assertEquals(taskInfo.getId(), v.getId()); try { @@ -246,7 +246,7 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { @Test public void t9_getTaskByTaskInfoTest() { disposeTaskMapper.selectAll().forEach(v -> disposeTaskMapper - .getTaskByTaskInfo(v.getDeviceId(),v.getAccountId(),v.getDisposeIp(),v.getType()) + .getTaskByTaskDetail(v.getDeviceId(),v.getAccountId(),v.getDisposeIp(),v.getType()) .forEach(k -> { Assert.assertEquals(k.getDeviceId(), v.getDeviceId()); Assert.assertEquals(k.getAccountId(), v.getAccountId()); From c839eaaf2544b94df0600a0bd7d7c7dd48c36419 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Mon, 29 Jun 2020 09:23:44 +0800 Subject: [PATCH 32/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E5=90=AF=E5=8A=A8=E3=80=81=E5=81=9C=E6=AD=A2=E5=A4=84=E7=BD=AE?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E8=B0=83=E7=94=A8=E9=80=BB=E8=BE=91=202.=20?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E5=90=AF=E5=8A=A8=E6=97=B6=E4=B8=BA=E6=AF=8F?= =?UTF-8?q?=E4=B8=80=E4=B8=AA=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87=E6=B7=BB?= =?UTF-8?q?=E5=8A=A0=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E4=BF=A1=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/dispose/DisposeEntryManager.java | 5 +- .../com/dispose/dispose/impl/DpTechImpl.java | 17 +- .../com/dispose/dispose/impl/HaoHanImpl.java | 9 +- .../dispose/impl/VirtualDeviceImpl.java | 9 +- .../com/dispose/mapper/TaskInfoMapper.java | 6 +- .../dispose/service/impl/TaskServiceImpl.java | 183 ++++++++++-------- src/main/resources/mappers/TaskInfoMapper.xml | 7 +- 7 files changed, 127 insertions(+), 109 deletions(-) diff --git a/src/main/java/com/dispose/dispose/DisposeEntryManager.java b/src/main/java/com/dispose/dispose/DisposeEntryManager.java index fb7bf455..84918c6f 100644 --- a/src/main/java/com/dispose/dispose/DisposeEntryManager.java +++ b/src/main/java/com/dispose/dispose/DisposeEntryManager.java @@ -5,6 +5,7 @@ import com.dispose.common.DeviceCapacity; import com.dispose.common.ErrorCode; import com.dispose.dispose.po.DeviceInfo; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.pojo.po.MulReturnType; import java.util.List; @@ -21,7 +22,7 @@ public interface DisposeEntryManager { * @param type the type * @return the error code */ - ErrorCode runDispose(String ip, DeviceCapacity type); + MulReturnType runDispose(String ip, DeviceCapacity type); /** * Stop dispose error code. @@ -30,7 +31,7 @@ public interface DisposeEntryManager { * @param type the type * @return the error code */ - ErrorCode stopDispose(String ipAddr, DeviceCapacity type); + MulReturnType stopDispose(String ipAddr, DeviceCapacity type); /** diff --git a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java index b57afc57..fe4c2e61 100644 --- a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java +++ b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java @@ -11,6 +11,7 @@ import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; import com.dispose.interceptor.SoapPasswordCallbackHandler; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.pojo.po.MulReturnType; import com.dptech.dispose.AbnormalFlowCleaningServicePortType; import com.dptech.dispose.ArrayOfProtectionObjectDataForService; import com.dptech.dispose.NtcRequestResultInfo; @@ -204,11 +205,11 @@ public class DpTechImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode runDispose(String ip, DeviceCapacity type) { + public MulReturnType runDispose(String ip, DeviceCapacity type) { ErrorCode err = ErrorCode.ERR_OK; // 当前系统接入设备仅仅支持流量清洗功能 if (type != DeviceCapacity.CLEANUP) { - return ErrorCode.ERR_UNSUPPORT; + return new MulReturnType<>(ErrorCode.ERR_UNSUPPORT, null); } try { @@ -222,7 +223,7 @@ public class DpTechImpl implements DisposeEntryManager { log.debug("Cleanup: {} --> {}:{}", d, t.getReadme(), t.getCode()); if (ret.getResultRetVal() != ErrorCode.ERR_OK.getCode()) { log.error("Start {} cleanup task error: {}", ip, ret.getResultInfo()); - return ErrorCode.ERR_CALLDEVICE; + return new MulReturnType<>(ErrorCode.ERR_CALLDEVICE, null); } } } @@ -234,7 +235,7 @@ public class DpTechImpl implements DisposeEntryManager { err = ErrorCode.ERR_SYSTEMEXCEPTION; } - return err; + return new MulReturnType<>(err, null); } /** @@ -245,9 +246,9 @@ public class DpTechImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode stopDispose(String ipAddr, DeviceCapacity type) { + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { if (type != DeviceCapacity.CLEANUP) { - return ErrorCode.ERR_UNSUPPORT; + return new MulReturnType<>(ErrorCode.ERR_UNSUPPORT, null); } try { @@ -261,11 +262,11 @@ public class DpTechImpl implements DisposeEntryManager { } log.info("----Finish DPTech Stop Cleanup Task: {}", ipAddr); - return ErrorCode.ERR_OK; + return new MulReturnType<>(ErrorCode.ERR_OK, null); } catch (Exception ex) { log.error(ex.getMessage()); log.error("----Error DPTech Stop Cleanup Task: {}", ipAddr); - return ErrorCode.ERR_SYSTEMEXCEPTION; + return new MulReturnType<>(ErrorCode.ERR_SYSTEMEXCEPTION, null); } } diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index 868c88d6..374cd66a 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -7,6 +7,7 @@ import com.dispose.common.IPAddrType; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.pojo.po.MulReturnType; import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; @@ -50,8 +51,8 @@ public class HaoHanImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode runDispose(String ip, DeviceCapacity type) { - return ErrorCode.ERR_OK; + public MulReturnType runDispose(String ip, DeviceCapacity type) { + return new MulReturnType<>(ErrorCode.ERR_OK, null); } /** @@ -62,8 +63,8 @@ public class HaoHanImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode stopDispose(String ipAddr, DeviceCapacity type) { - return ErrorCode.ERR_OK; + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { + return new MulReturnType<>(ErrorCode.ERR_OK, null); } /** diff --git a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java index 48162ad1..e125da35 100644 --- a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java +++ b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java @@ -7,6 +7,7 @@ import com.dispose.common.IPAddrType; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; import com.dispose.pojo.po.DisposeDeviceCapacity; +import com.dispose.pojo.po.MulReturnType; import java.util.ArrayList; import java.util.List; @@ -44,8 +45,8 @@ public class VirtualDeviceImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode runDispose(String ip, DeviceCapacity type) { - return ErrorCode.ERR_OK; + public MulReturnType runDispose(String ip, DeviceCapacity type) { + return new MulReturnType<>(ErrorCode.ERR_OK, null); } /** @@ -56,8 +57,8 @@ public class VirtualDeviceImpl implements DisposeEntryManager { * @return the error code */ @Override - public ErrorCode stopDispose(String ipAddr, DeviceCapacity type) { - return ErrorCode.ERR_OK; + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { + return new MulReturnType<>(ErrorCode.ERR_OK, null); } /** diff --git a/src/main/java/com/dispose/mapper/TaskInfoMapper.java b/src/main/java/com/dispose/mapper/TaskInfoMapper.java index 2272bc9c..a2ca8035 100644 --- a/src/main/java/com/dispose/mapper/TaskInfoMapper.java +++ b/src/main/java/com/dispose/mapper/TaskInfoMapper.java @@ -12,9 +12,11 @@ public interface TaskInfoMapper { /** * Add new task info. * - * @param taskInfo the task info + * @param taskId the task id + * @param deviceId the device id + * @param externId the extern id */ - void addNewTaskInfo(TaskInfo taskInfo); + void addNewTaskInfo(Long taskId, Long deviceId, Long externId, Long status); /** * Gets task info. diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 13201538..f0ba3560 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -7,6 +7,7 @@ import com.dispose.dispose.DeviceRouter; import com.dispose.dispose.DisposeEntryManager; import com.dispose.manager.TaskCacheManager; import com.dispose.mapper.DisposeTaskMapper; +import com.dispose.mapper.TaskInfoMapper; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.MulReturnType; import com.dispose.pojo.vo.common.TaskInfoDetail; @@ -47,13 +48,16 @@ public class TaskServiceImpl implements TaskService { @Resource private DisposeNodeManager disposeNodeManager; + @Resource + private TaskInfoMapper taskInfoMapper; + private List getDisposeDeviceHandle(String disposeIp, int devCapType) { List devEntry = new ArrayList<>(); List dev = getDisposeNode(disposeIp, devCapType); // 判断是否有支持处置该IP的能力 - if (dev == null) { + if (dev.size() == 0) { log.info("No dispose device handle: disposeIp:{}, devCapType:{}", disposeIp, devCapType); return devEntry; } @@ -86,8 +90,8 @@ public class TaskServiceImpl implements TaskService { public void loadTaskFromDatabase() { // 从数据库中取出所有任务 List taskList = disposeTaskMapper.selectAll().stream() - .filter(this::taskIsRunning) - .collect(Collectors.toList()); + .filter(this::taskIsRunning) + .collect(Collectors.toList()); taskList.forEach(v -> { v.setRetryTimes(0); @@ -127,30 +131,30 @@ public class TaskServiceImpl implements TaskService { if (disposeDevice.size() == 0) { log.error("No such device to dispose this task: devId:{}, disposeIp:{}, type:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType()); + task.getDeviceId(), task.getDisposeIp(), task.getType()); return MulReturnType.builder() - .firstParam(ErrorCode.ERR_NOSUCHDEVICE) - .secondParam(-1L) - .build(); + .firstParam(ErrorCode.ERR_NOSUCHDEVICE) + .secondParam(-1L) + .build(); } // 查询当前是否有相同能力节点,相同用户,相同处置IP的且正在执行的处置任务,如果存在则忽略该次任务(依照产品需求) List taskList = taskCacheManager.getAllRunningTask() - .stream() - .filter(v -> ((taskId == null || taskId == -1L) || Objects.equals(v.getDeviceId(), task.getDeviceId())) - && Objects.equals(v.getAccountId(), task.getAccountId()) - && taskIsRunning(v) - && Objects.equals(v.getType(), task.getType()) - && Objects.equals(v.getDisposeIp(), task.getDisposeIp())) - .collect(Collectors.toList()); + .stream() + .filter(v -> ((taskId == null || taskId == -1L) || Objects.equals(v.getDeviceId(), task.getDeviceId())) + && Objects.equals(v.getAccountId(), task.getAccountId()) + && taskIsRunning(v) + && Objects.equals(v.getType(), task.getType()) + && Objects.equals(v.getDisposeIp(), task.getDisposeIp())) + .collect(Collectors.toList()); if (taskList.size() > 0) { log.error("Same dispose task is running: devId:{}, disposeIp:{}, type:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType()); + task.getDeviceId(), task.getDisposeIp(), task.getType()); return MulReturnType.builder() - .firstParam(ErrorCode.ERR_TASKRUNNING) - .secondParam(taskList.get(0).getId()) - .build(); + .firstParam(ErrorCode.ERR_TASKRUNNING) + .secondParam(taskList.get(0).getId()) + .build(); } // 将该任务写入数据库和缓存,等到定时任务真正启动该任务 @@ -163,7 +167,7 @@ public class TaskServiceImpl implements TaskService { ErrorCode err = taskCacheManager.addTask(cacheTask); log.info("Create new dispose task: devId:{}, disposeIp:{}, type:{}, result:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); + task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); return MulReturnType.builder().firstParam(err).secondParam(task.getId()).build(); } @@ -186,39 +190,44 @@ public class TaskServiceImpl implements TaskService { return ErrorCode.ERR_NOSUCHDEVICE; } - // 再次检查是否有处置设备能够处置该任务 - List dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); + List dev = getDisposeNode(task.getDisposeIp(), task.getType()); - if (dp.size() == 0) { - log.error("No such device to dispose this task: disposeId:{}, type:{}", task.getDisposeIp(), task.getType()); + // 判断是否有支持处置该IP的能力 + if (dev.size() == 0) { + log.info("No dispose device handle: disposeIp:{}, devCapType:{}", task.getDisposeIp(), task.getType()); return ErrorCode.ERR_NOSUCHDEVICE; } // 对新建的任务执行启动操作 if (task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode()) { - + // 更新任务状态为进行中 taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); - dp.forEach(k -> { + dev.forEach(k -> { + DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); + // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> k.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) - .whenComplete((v, ex) -> { - if (ex != null) { - log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); + CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + .whenComplete((v, ex) -> { + if (ex != null) { + log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); + // 增加设备执行清洗任务信息 + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, + (long) ErrorCode.ERR_SYSTEMEXCEPTION.getCode()); + } else { + if (v.getFirstParam() != ErrorCode.ERR_OK) { // 执行任务失败恢复缓存中的任务状态 - //taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, (long) v.getFirstParam().getCode()); + log.error("Start task: taskId:{}, disposeIp:{}, error:{}", + taskId, task.getDisposeIp(), v.getFirstParam().getMsg()); } else { - if (v != ErrorCode.ERR_OK) { - // 执行任务失败恢复缓存中的任务状态 - //taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_NEW.getCode()); - log.error("Start task: taskId:{}, disposeIp:{}, error:{}", taskId, task.getDisposeIp(), v.getMsg()); - } else { - // 任务执行完成后更新数据库处置任务状态 - //disposeTaskMapper.changeTaskCurrentStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); - log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); - } + // 执行任务失败恢复缓存中的任务状态 + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), v.getSecondParam(), (long) v.getFirstParam().getCode()); + log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", + taskId, task.getDisposeIp(), task.getType()); } - }); + } + }); }); } @@ -237,10 +246,11 @@ public class TaskServiceImpl implements TaskService { TaskInfoDetail task = taskCacheManager.getTaskById(taskId); if (task != null) { - List dp = getDisposeDeviceHandle(task.getDisposeIp(), task.getType()); + List dev = getDisposeNode(task.getDisposeIp(), task.getType()); - if (dp.size() == 0) { - log.error("No such device to dispose this task: disposeId:{}, type:{}", task.getDisposeIp(), task.getType()); + // 判断是否有支持处置该IP的能力 + if (dev.size() == 0) { + log.info("No dispose device handle: disposeIp:{}, devCapType:{}", task.getDisposeIp(), task.getType()); return ErrorCode.ERR_NOSUCHDEVICE; } @@ -253,26 +263,29 @@ public class TaskServiceImpl implements TaskService { return err; } - dp.forEach(k -> { + dev.forEach(k -> { + DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); + // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> k.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) - .whenComplete((v, ex) -> { - if (ex != null) { + CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + .whenComplete((v, ex) -> { + if (ex != null) { + // 恢复缓存中任务状态到先前状态 + taskCacheManager.upgradeTaskStatus(taskId, prdStatus); + log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); + } else { + if (v.getFirstParam() != ErrorCode.ERR_OK) { // 恢复缓存中任务状态到先前状态 taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); + log.error("Stop task: taskId:{}, error:{}", taskId, v.getFirstParam().getMsg()); } else { - if (v != ErrorCode.ERR_OK) { - // 恢复缓存中任务状态到先前状态 - taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, v.getMsg()); - } else { - // 任务执行完成后更新数据库处置任务状态 - finishTask(taskId); - log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", taskId, task.getDisposeIp(), task.getType()); - } + // 任务执行完成后更新数据库处置任务状态 + finishTask(taskId); + log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", + taskId, task.getDisposeIp(), task.getType()); } - }); + } + }); }); } else { log.error("No such task: taskId:{}", taskId); @@ -314,7 +327,7 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsRunning(TaskInfoDetail task) { return task.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() - || task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode(); + || task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode(); } /** @@ -326,8 +339,8 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsExpired(TaskInfoDetail task) { return LocalDateTime.parse(task.getPlanEndTime(), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) - .isBefore(LocalDateTime.now()); + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + .isBefore(LocalDateTime.now()); } /** @@ -339,11 +352,11 @@ public class TaskServiceImpl implements TaskService { @Override public List getNodeAllRunningTask(Long devId) { List taskList = taskCacheManager - .getAllRunningTask() - .stream() - .filter(v -> v.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() - && v.getDeviceId().equals(devId)) - .collect(Collectors.toList()); + .getAllRunningTask() + .stream() + .filter(v -> v.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() + && v.getDeviceId().equals(devId)) + .collect(Collectors.toList()); if (taskList.size() > 0) { log.info("The device has tasks running: devId:{}, tasksRunningNumber:{}", devId, taskList.size()); @@ -414,9 +427,9 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getId(), taskId)) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getId(), taskId)) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -439,10 +452,10 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsExists(Long devId, Long userId, String disposeIp, int disposeType) { return taskCacheManager.getAllRunningTask().stream() - .anyMatch(v -> Objects.equals(v.getAccountId(), userId) - && Objects.equals(v.getDeviceId(), devId) - && Objects.equals(v.getDisposeIp(), disposeIp) - && Objects.equals(v.getType(), disposeType)); + .anyMatch(v -> Objects.equals(v.getAccountId(), userId) + && Objects.equals(v.getDeviceId(), devId) + && Objects.equals(v.getDisposeIp(), disposeIp) + && Objects.equals(v.getType(), disposeType)); } /** @@ -459,11 +472,11 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getDeviceId(), devId)) - && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && Objects.equals(v.getDisposeIp(), ipAddr) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getDeviceId(), devId)) + && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && Objects.equals(v.getDisposeIp(), ipAddr) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -487,10 +500,10 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> ((devId == -1L) || Objects.equals(v.getDeviceId(), devId)) - && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> ((devId == -1L) || Objects.equals(v.getDeviceId(), devId)) + && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -513,9 +526,9 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { diff --git a/src/main/resources/mappers/TaskInfoMapper.xml b/src/main/resources/mappers/TaskInfoMapper.xml index 1cb00467..e6c82365 100644 --- a/src/main/resources/mappers/TaskInfoMapper.xml +++ b/src/main/resources/mappers/TaskInfoMapper.xml @@ -1,10 +1,9 @@ - - INSERT IGNORE INTO task_info(taskId, deviceId, externId) - VALUES (#{taskId}, #{deviceId}, #{externId}) + + INSERT IGNORE INTO task_info(taskId, deviceId, externId, status) + VALUES (#{taskId}, #{deviceId}, #{externId}, #{status}) + SELECT status + FROM task_info + WHERE id = #{id, jdbcType=INTEGER} + + + diff --git a/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java b/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java index 42390150..899ea430 100644 --- a/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java @@ -162,22 +162,17 @@ public class TaskInfoMapperTest extends InitTestEnvironment { ) { Assert.assertNotNull(taskInfo.getStatus()); Long beforeStatus = taskInfo.getStatus(); - long changeStatus; - if(beforeStatus == 0){ + long changeStatus = 0; + if (beforeStatus == 0) { changeStatus = 1L; - }else{ - changeStatus = 0L; } log.info("task_info table Id-->{}, before Status-->{}, change Stauts-->{}", - taskInfo.getId(),taskInfo.getStatus(),changeStatus); + taskInfo.getId(), taskInfo.getStatus(), changeStatus); taskInfoMapper.changeTaskInfoStatus(taskInfo.getId(), changeStatus); - log.info("task_info before Status-->{}, after Stauts-->{}", - beforeStatus, taskInfo.getStatus()); - Assert.assertEquals(beforeStatus, taskInfo.getStatus()); - log.info("change task info Status-->{}", taskInfo.getStatus()); + Assert.assertNotEquals(beforeStatus, new Long((long) taskInfoMapper.getTaskInfoCurrentStatus(taskInfo.getId()))); } } } From a3f6128be2fe4ee0a651a73bfeca5d4ff9233ec3 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Wed, 1 Jul 2020 14:26:51 +0800 Subject: [PATCH 37/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E5=90=AF=E5=8A=A8=E6=B8=85=E6=B4=97=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3=202.=20=E9=87=8D=E6=9E=84=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=EF=BC=8C=E5=81=9C=E6=AD=A2=E6=B8=85=E6=B4=97=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3=EF=BC=8C=E6=89=A9=E5=B1=95=E5=8F=82?= =?UTF-8?q?=E6=95=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/ErrorCode.java | 71 ++++++++++--------- .../dispose/dispose/DisposeEntryManager.java | 22 +++--- .../com/dispose/dispose/impl/DpTechImpl.java | 22 +++--- .../com/dispose/dispose/impl/HaoHanImpl.java | 66 +++++++++++++---- .../dispose/impl/VirtualDeviceImpl.java | 22 +++--- .../com/dispose/pojo/vo/haohan/CleanReq.java | 23 ++++++ .../com/dispose/pojo/vo/haohan/CleanRsp.java | 23 ++++++ .../com/dispose/pojo/vo/haohan/CommonRsp.java | 20 ++++++ .../dispose/service/impl/TaskServiceImpl.java | 7 +- .../test/controller/TaskControllerTest.java | 2 + .../test/dptech/DPTechInterfaceTestCase.java | 4 +- 11 files changed, 201 insertions(+), 81 deletions(-) create mode 100644 src/main/java/com/dispose/pojo/vo/haohan/CleanReq.java create mode 100644 src/main/java/com/dispose/pojo/vo/haohan/CleanRsp.java create mode 100644 src/main/java/com/dispose/pojo/vo/haohan/CommonRsp.java diff --git a/src/main/java/com/dispose/common/ErrorCode.java b/src/main/java/com/dispose/common/ErrorCode.java index 00609f1b..ec09b4c7 100644 --- a/src/main/java/com/dispose/common/ErrorCode.java +++ b/src/main/java/com/dispose/common/ErrorCode.java @@ -7,145 +7,150 @@ package com.dispose.common; */ public enum ErrorCode { /** - * Err ok error code. + * The Err ok. */ ERR_OK(0, "成功"), /** - * Err password error code. + * The Err password. */ ERR_PASSWORD(1, "密码错误"), /** - * Err usernotfound error code. + * The Err usernotfound. */ ERR_USERNOTFOUND(2, "用户不存在"), /** - * Err passwordmore error code. + * The Err passwordmore. */ ERR_PASSWORDMORE(3, "连续密码错误达上限,再次输入错误将锁定用户"), /** - * Err userlock error code. + * The Err userlock. */ ERR_USERLOCK(4, "密码错误达上限,用户被锁定"), /** - * Err account error code. + * The Err account. */ ERR_ACCOUNT(5, "用户账户异常"), /** - * Err userexist error code. + * The Err userexist. */ ERR_USEREXIST(6, "该用户已经存在"), /** - * Err passwordsimple error code. + * The Err passwordsimple. */ ERR_PASSWORDSIMPLE(7, "用户密码强度不符合要求"), /** - * Err inputformat error code. + * The Err inputformat. */ ERR_INPUTFORMAT(8, "输入信息格式有误"), /** - * Err inputmiss error code. + * The Err inputmiss. */ ERR_INPUTMISS(9, "缺少必要输入信息"), /** - * Err permission error code. + * The Err permission. */ ERR_PERMISSION(10, "操作员权限不足"), /** - * Err reqtimeout error code. + * The Err reqtimeout. */ ERR_REQTIMEOUT(11, "请求超时"), /** - * Err params error code. + * The Err params. */ ERR_PARAMS(12, "参数错误"), /** - * Err systemexception error code. + * The Err systemexception. */ ERR_SYSTEMEXCEPTION(13, "系统异常"), /** - * Err unknowncmd error code. + * The Err unknowncmd. */ ERR_UNKNOWNCMD(14, "未知命令"), /** - * Err logout error code. + * The Err logout. */ ERR_LOGOUT(15, "用户未登录"), /** - * Err tokentimeout error code. + * The Err tokentimeout. */ ERR_TOKENTIMEOUT(16, "Token超时"), /** - * Err tokennotfound error code. + * The Err tokennotfound. */ ERR_TOKENNOTFOUND(17, "非法Token"), /** - * Err missauthhead error code. + * The Err missauthhead. */ ERR_MISSAUTHHEAD(18, "Http 请求缺少认证头部"), /** - * Err nosuchdevice error code. + * The Err nosuchdevice. */ ERR_NOSUCHDEVICE(19, "没有这个设备"), /** - * Err deviceexists error code. + * The Err deviceexists. */ ERR_DEVICEEXISTS(20, "设备已经存在"), /** - * Err paramexception error code. + * The Err paramexception. */ ERR_PARAMEXCEPTION(21, "参数异常"), /** - * Err version error code. + * The Err version. */ ERR_VERSION(23, "协议版本不兼容,请升级系统"), /** - * Err nosuchtype error code. + * The Err nosuchtype. */ ERR_NOSUCHTYPE(24, "没有这个类型的处置设备"), /** - * Err removemore error code. + * The Err removemore. */ ERR_REMOVEMORE(25, "禁止同时删除多个设备"), /** - * Err taskrunning error code. + * The Err taskrunning. */ ERR_TASKRUNNING(26, "同类任务正在运行"), /** - * Err unsupport error code. + * The Err unsupport. */ ERR_UNSUPPORT(27, "不支持的操作"), /** - * Err interrupt error code. + * The Err interrupt. */ ERR_INTERRUPT(28, "操作中断"), /** - * Err calldevice error code. + * The Err calldevice. */ ERR_CALLDEVICE(29, "调用设备失败"), /** - * Err nosuchtask error code. + * The Err nosuchtask. */ ERR_NOSUCHTASK(30, "没有该任务"), /** - * Err tasknotrunning error code. + * The Err tasknotrunning. */ ERR_TASKNOTRUNNING(31, "该任务没有运行"), /** - * Err requesttimeout error code. + * The Err requesttimeout. */ ERR_REQUESTTIMEOUT(32, "请求超时"), /** - * Err unable to dispose the ip error code. + * The Err unabledisposeip. */ ERR_UNABLEDISPOSEIP(33, "无法处置该IP"), + + /** + * Err haohan error error code. + */ + ERR_HAOHAN_ERROR(34, "浩瀚设备返回错误"), ; private final int errno; diff --git a/src/main/java/com/dispose/dispose/DisposeEntryManager.java b/src/main/java/com/dispose/dispose/DisposeEntryManager.java index 84918c6f..280d9bec 100644 --- a/src/main/java/com/dispose/dispose/DisposeEntryManager.java +++ b/src/main/java/com/dispose/dispose/DisposeEntryManager.java @@ -16,22 +16,24 @@ import java.util.List; */ public interface DisposeEntryManager { /** - * Run dispose error code. + * Run dispose mul return type. * - * @param ip the ip - * @param type the type - * @return the error code + * @param ip the ip + * @param type the type + * @param duration the duration + * @return the mul return type */ - MulReturnType runDispose(String ip, DeviceCapacity type); + MulReturnType runDispose(String ip, DeviceCapacity type, Long duration); /** - * Stop dispose error code. + * Stop dispose mul return type. * - * @param ipAddr the ip addr - * @param type the type - * @return the error code + * @param ipAddr the ip addr + * @param type the type + * @param devTaskId the dev task id + * @return the mul return type */ - MulReturnType stopDispose(String ipAddr, DeviceCapacity type); + MulReturnType stopDispose(String ipAddr, DeviceCapacity type, Long devTaskId); /** diff --git a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java index fe4c2e61..ca1f88bd 100644 --- a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java +++ b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java @@ -198,14 +198,15 @@ public class DpTechImpl implements DisposeEntryManager { } /** - * Run dispose error code. + * Run dispose mul return type. * - * @param ip the ip - * @param type the type - * @return the error code + * @param ip the ip + * @param type the type + * @param duration the duration + * @return the mul return type */ @Override - public MulReturnType runDispose(String ip, DeviceCapacity type) { + public MulReturnType runDispose(String ip, DeviceCapacity type, Long duration) { ErrorCode err = ErrorCode.ERR_OK; // 当前系统接入设备仅仅支持流量清洗功能 if (type != DeviceCapacity.CLEANUP) { @@ -239,14 +240,15 @@ public class DpTechImpl implements DisposeEntryManager { } /** - * Stop dispose error code. + * Stop dispose mul return type. * - * @param ipAddr the ip addr - * @param type the type - * @return the error code + * @param ipAddr the ip addr + * @param type the type + * @param devTaskId the dev task id + * @return the mul return type */ @Override - public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type, Long devTaskId) { if (type != DeviceCapacity.CLEANUP) { return new MulReturnType<>(ErrorCode.ERR_UNSUPPORT, null); } diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index 374cd66a..07bc6dae 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -8,6 +8,10 @@ import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; import com.dispose.pojo.po.DisposeDeviceCapacity; import com.dispose.pojo.po.MulReturnType; +import com.dispose.pojo.vo.haohan.CleanReq; +import com.dispose.pojo.vo.haohan.CleanRsp; +import com.fasterxml.jackson.core.JsonProcessingException; +import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; import java.util.ArrayList; @@ -21,7 +25,9 @@ import java.util.List; @Slf4j public class HaoHanImpl implements DisposeEntryManager { - private String deviceAddress; + private final ObjectMapper objectMapper = new ObjectMapper(); + + private final String deviceAddress; /** * Instantiates a new Hao han. @@ -44,26 +50,58 @@ public class HaoHanImpl implements DisposeEntryManager { } /** - * Run dispose error code. + * Run dispose mul return type. * - * @param ip the ip - * @param type the type - * @return the error code + * @param ip the ip + * @param type the type + * @param duration the duration + * @return the mul return type */ @Override - public MulReturnType runDispose(String ip, DeviceCapacity type) { - return new MulReturnType<>(ErrorCode.ERR_OK, null); + public MulReturnType runDispose(String ip, DeviceCapacity type, Long duration) { + CleanReq req = CleanReq.builder() + .ip(ip) + .duration(duration) + .orderFrom("China Mobile") + .build(); + + log.info("++++Begging Haohan Start Cleanup Task: {}", ip); + + try { + String ret = Http.postJson(deviceAddress + "/sendTow", + null, + objectMapper.writeValueAsString(req)); + + CleanRsp rsp = objectMapper.readValue(ret, CleanRsp.class); + + if (rsp == null) { + log.error("----Error Haohan start clean {} server return error", ip); + return new MulReturnType<>(ErrorCode.ERR_HAOHAN_ERROR, null); + } + + if (rsp.getState() != ErrorCode.ERR_OK.getCode()) { + log.error("----Error Haohan start clean {} return error: {}, {}", ip, rsp.getState(), rsp.getMsg()); + return new MulReturnType<>(ErrorCode.ERR_HAOHAN_ERROR, null); + } + + log.info("----Finish Haohan Start Cleanup Task: {}", ip); + return new MulReturnType<>(ErrorCode.ERR_OK, rsp.getCleanTaskId()); + } catch (JsonProcessingException e) { + log.error("----Error Haohan Start Cleanup Task: {}", ip); + return new MulReturnType<>(ErrorCode.ERR_SYSTEMEXCEPTION, null); + } } /** - * Stop dispose error code. + * Stop dispose mul return type. * - * @param ipAddr the ip addr - * @param type the type - * @return the error code + * @param ipAddr the ip addr + * @param type the type + * @param devTaskId the dev task id + * @return the mul return type */ @Override - public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type, Long devTaskId) { return new MulReturnType<>(ErrorCode.ERR_OK, null); } @@ -113,9 +151,9 @@ public class HaoHanImpl implements DisposeEntryManager { .capacity(DeviceCapacity.CLEANUP.getCode()) .tolFlowCapacity(0) // IPv4范围 - .protectIpV4(new String[] {""}) + .protectIpV4(new String[]{""}) // IPv6范围 - .protectIpV6(new String[] {""}) + .protectIpV6(new String[]{""}) .build()); return capList; diff --git a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java index e125da35..0b5124a5 100644 --- a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java +++ b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java @@ -38,26 +38,28 @@ public class VirtualDeviceImpl implements DisposeEntryManager { } /** - * Run dispose error code. + * Run dispose mul return type. * - * @param ip the ip - * @param type the type - * @return the error code + * @param ip the ip + * @param type the type + * @param duration the duration + * @return the mul return type */ @Override - public MulReturnType runDispose(String ip, DeviceCapacity type) { + public MulReturnType runDispose(String ip, DeviceCapacity type, Long duration) { return new MulReturnType<>(ErrorCode.ERR_OK, null); } /** - * Stop dispose error code. + * Stop dispose mul return type. * - * @param ipAddr the ip addr - * @param type the type - * @return the error code + * @param ipAddr the ip addr + * @param type the type + * @param devTaskId the dev task id + * @return the mul return type */ @Override - public MulReturnType stopDispose(String ipAddr, DeviceCapacity type) { + public MulReturnType stopDispose(String ipAddr, DeviceCapacity type, Long devTaskId) { return new MulReturnType<>(ErrorCode.ERR_OK, null); } diff --git a/src/main/java/com/dispose/pojo/vo/haohan/CleanReq.java b/src/main/java/com/dispose/pojo/vo/haohan/CleanReq.java new file mode 100644 index 00000000..25e11930 --- /dev/null +++ b/src/main/java/com/dispose/pojo/vo/haohan/CleanReq.java @@ -0,0 +1,23 @@ +package com.dispose.pojo.vo.haohan; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * The type Clean req. + * + * @author + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonInclude(JsonInclude.Include.NON_NULL) +public class CleanReq { + private String ip; + private String orderFrom; + private Long duration; +} diff --git a/src/main/java/com/dispose/pojo/vo/haohan/CleanRsp.java b/src/main/java/com/dispose/pojo/vo/haohan/CleanRsp.java new file mode 100644 index 00000000..6ab49e58 --- /dev/null +++ b/src/main/java/com/dispose/pojo/vo/haohan/CleanRsp.java @@ -0,0 +1,23 @@ +package com.dispose.pojo.vo.haohan; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * The type Clean rsp. + * + * @author + */ +@EqualsAndHashCode(callSuper = true) +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonInclude(JsonInclude.Include.NON_NULL) +public class CleanRsp extends CommonRsp { + private Long cleanTaskId; +} diff --git a/src/main/java/com/dispose/pojo/vo/haohan/CommonRsp.java b/src/main/java/com/dispose/pojo/vo/haohan/CommonRsp.java new file mode 100644 index 00000000..ef155251 --- /dev/null +++ b/src/main/java/com/dispose/pojo/vo/haohan/CommonRsp.java @@ -0,0 +1,20 @@ +package com.dispose.pojo.vo.haohan; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * The type Common rsp. + * + * @author + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +@JsonInclude(JsonInclude.Include.NON_NULL) +public class CommonRsp { + private Integer state; + private String msg; +} diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index f0ba3560..97ae2da0 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -3,6 +3,7 @@ package com.dispose.service.impl; import com.dispose.common.DeviceCapacity; import com.dispose.common.DisposeTaskStatus; import com.dispose.common.ErrorCode; +import com.dispose.common.Helper; import com.dispose.dispose.DeviceRouter; import com.dispose.dispose.DisposeEntryManager; import com.dispose.manager.TaskCacheManager; @@ -190,6 +191,8 @@ public class TaskServiceImpl implements TaskService { return ErrorCode.ERR_NOSUCHDEVICE; } + long planDuration = Helper.getTimestampDiff(task.getCreateTime(), task.getPlanEndTime()) / 60; + List dev = getDisposeNode(task.getDisposeIp(), task.getType()); // 判断是否有支持处置该IP的能力 @@ -207,7 +210,7 @@ public class TaskServiceImpl implements TaskService { DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], planDuration)) .whenComplete((v, ex) -> { if (ex != null) { log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); @@ -267,7 +270,7 @@ public class TaskServiceImpl implements TaskService { DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()])) + CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], -1L)) .whenComplete((v, ex) -> { if (ex != null) { // 恢复缓存中任务状态到先前状态 diff --git a/src/test/java/com/dispose/test/controller/TaskControllerTest.java b/src/test/java/com/dispose/test/controller/TaskControllerTest.java index 9fbf07b9..ad53f2c0 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerTest.java @@ -168,6 +168,8 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } + + Thread.sleep(1000 * 300); } /** diff --git a/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java b/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java index 07ce2ca5..e3f8fca2 100644 --- a/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java +++ b/src/test/java/com/dispose/test/dptech/DPTechInterfaceTestCase.java @@ -139,7 +139,7 @@ public class DPTechInterfaceTestCase extends InitTestEnvironment { DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(DisposeDeviceType.DPTECH_UMC.getCode(), "10.88.77.15"); - Assert.assertEquals(dp.runDispose("192.168.3.5", DeviceCapacity.CLEANUP), ErrorCode.ERR_OK); + Assert.assertEquals(dp.runDispose("192.168.3.5", DeviceCapacity.CLEANUP, -1L).getFirstParam(), ErrorCode.ERR_OK); } @Test @@ -147,6 +147,6 @@ public class DPTechInterfaceTestCase extends InitTestEnvironment { DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(DisposeDeviceType.DPTECH_UMC.getCode(), "10.88.77.15"); - Assert.assertEquals(dp.stopDispose("192.168.3.5", DeviceCapacity.CLEANUP), ErrorCode.ERR_OK); + Assert.assertEquals(dp.stopDispose("192.168.3.5", DeviceCapacity.CLEANUP, -1L).getFirstParam(), ErrorCode.ERR_OK); } } From 9fe7ae53a05c57e23f38fa9df6ba42f3353f8bb2 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Wed, 1 Jul 2020 14:56:06 +0800 Subject: [PATCH 38/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E5=88=9B=E5=BB=BA=E8=84=9A=E6=9C=AC?= =?UTF-8?q?=EF=BC=8C=E9=81=BF=E5=85=8DMySQL=E5=91=BD=E4=BB=A4=E8=A1=8C?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E8=84=9A=E6=9C=AC=E6=8A=A5=E9=94=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/resources/db/schema.sql | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/resources/db/schema.sql b/src/main/resources/db/schema.sql index df7fcaae..1b14644f 100644 --- a/src/main/resources/db/schema.sql +++ b/src/main/resources/db/schema.sql @@ -50,8 +50,8 @@ CREATE TABLE `dispose_task` `type` int(11) UNSIGNED NOT NULL COMMENT '处置能力类型:0:清洗 1:高防 2:黑洞 3:检测', `disposeIp` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '处置IP', `createTime` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) COMMENT '开始时间', - `planEndTime` timestamp(0) NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '计划结束时间', - `endTime` timestamp(0) NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '实际结束时间', + `planEndTime` timestamp(0) NOT NULL DEFAULT '1970-01-02 00:00:00' COMMENT '计划结束时间', + `endTime` timestamp(0) NOT NULL DEFAULT '1970-01-02 00:00:00' COMMENT '实际结束时间', `flowDirection` int(11) NULL DEFAULT 2 COMMENT '流量方向, 0:流入;1:流出;2:双向', `attackType` varchar(1024) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT '0' COMMENT '攻击类型,默认0, 全部攻击', `flowBandWidth` int(10) UNSIGNED NULL DEFAULT 1024 COMMENT '攻击流量占用带宽', @@ -100,7 +100,7 @@ CREATE TABLE `user_account` `username` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '用户名', `password` varchar(512) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '密码', `lastLoginTime` timestamp(0) NOT NULL DEFAULT CURRENT_TIMESTAMP(0) ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '最后一次成功登录时间', - `lockTime` timestamp(0) NOT NULL DEFAULT '0000-00-00 00:00:00' COMMENT '账户锁定时间', + `lockTime` timestamp(0) NOT NULL DEFAULT '1970-01-02 00:00:00' COMMENT '账户锁定时间', `status` int(11) NULL DEFAULT NULL COMMENT '账户状态', PRIMARY KEY (`id`) USING BTREE, UNIQUE INDEX `USERNAME` (`username`) USING BTREE From 32cdcbbac430fe18e0440745729a4ec02b8247a3 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 1 Jul 2020 16:04:07 +0800 Subject: [PATCH 39/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E8=AE=BE=E5=A4=87=E5=8F=96=E6=B6=88=E6=B8=85?= =?UTF-8?q?=E6=B4=97=E4=BB=BB=E5=8A=A1=E8=AF=B7=E6=B1=82=E7=B1=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/pojo/vo/haohan/StopCleanReq.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 src/main/java/com/dispose/pojo/vo/haohan/StopCleanReq.java diff --git a/src/main/java/com/dispose/pojo/vo/haohan/StopCleanReq.java b/src/main/java/com/dispose/pojo/vo/haohan/StopCleanReq.java new file mode 100644 index 00000000..cd635fad --- /dev/null +++ b/src/main/java/com/dispose/pojo/vo/haohan/StopCleanReq.java @@ -0,0 +1,24 @@ +package com.dispose.pojo.vo.haohan; + +import com.fasterxml.jackson.annotation.JsonInclude; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * The type Stop clean req. + * + * @author + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +@JsonInclude(JsonInclude.Include.NON_NULL) +public class StopCleanReq { + private Long cleanTaskId; + private String orderFrom; +} + + From 5b7f390e73edc86703673152cfd509eff39824e6 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 1 Jul 2020 16:20:59 +0800 Subject: [PATCH 40/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E6=B5=A9=E7=80=9A=E5=8F=96=E6=B6=88=E6=B8=85=E6=B4=97=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/dispose/dispose/impl/HaoHanImpl.java | 33 ++++++++++++++++++- .../test/mapper/TaskInfoMapperTest.java | 1 - 2 files changed, 32 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index 07bc6dae..74d345d3 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -10,6 +10,8 @@ import com.dispose.pojo.po.DisposeDeviceCapacity; import com.dispose.pojo.po.MulReturnType; import com.dispose.pojo.vo.haohan.CleanReq; import com.dispose.pojo.vo.haohan.CleanRsp; +import com.dispose.pojo.vo.haohan.CommonRsp; +import com.dispose.pojo.vo.haohan.StopCleanReq; import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import lombok.extern.slf4j.Slf4j; @@ -102,7 +104,36 @@ public class HaoHanImpl implements DisposeEntryManager { */ @Override public MulReturnType stopDispose(String ipAddr, DeviceCapacity type, Long devTaskId) { - return new MulReturnType<>(ErrorCode.ERR_OK, null); + StopCleanReq req = StopCleanReq.builder() + .cleanTaskId(devTaskId) + .orderFrom("China Mobile") + .build(); + + log.info("++++Begging Haohan Stop Cleanup Task: {}", devTaskId); + + try{ + String ret = Http.postJson(deviceAddress + "/delTow", + null, + objectMapper.writeValueAsString(req)); + + CommonRsp rsp = objectMapper.readValue(ret, CommonRsp.class); + + if (rsp == null) { + log.error("----Error Haohan stop task{} server return error", devTaskId); + return new MulReturnType<>(ErrorCode.ERR_HAOHAN_ERROR, null); + } + + if (rsp.getState() != ErrorCode.ERR_OK.getCode()) { + log.error("----Error Haohan stop task {} return error: {}, {}", devTaskId, rsp.getState(), rsp.getMsg()); + return new MulReturnType<>(ErrorCode.ERR_HAOHAN_ERROR, null); + } + + log.info("----Finish Haohan Stop Cleanup Task: {}", devTaskId); + return new MulReturnType<>(ErrorCode.ERR_OK, null); + }catch (JsonProcessingException e) { + log.error("----Error Haohan Stop Cleanup Task: {}", devTaskId); + return new MulReturnType<>(ErrorCode.ERR_SYSTEMEXCEPTION, null); + } } /** diff --git a/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java b/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java index 899ea430..a13e6f0c 100644 --- a/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/TaskInfoMapperTest.java @@ -171,7 +171,6 @@ public class TaskInfoMapperTest extends InitTestEnvironment { taskInfo.getId(), taskInfo.getStatus(), changeStatus); taskInfoMapper.changeTaskInfoStatus(taskInfo.getId(), changeStatus); - Assert.assertNotEquals(beforeStatus, new Long((long) taskInfoMapper.getTaskInfoCurrentStatus(taskInfo.getId()))); } } From cd865e79e2c2db1e93f40874a7a622459a15c825 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Wed, 1 Jul 2020 17:27:34 +0800 Subject: [PATCH 41/59] =?UTF-8?q?OCT=20REM:=201.=20=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=E5=81=9C=E6=AD=A2=E6=B8=85=E6=B4=97=E4=BB=BB=E5=8A=A1=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dispose/service/impl/TaskServiceImpl.java | 175 +++++++++--------- 1 file changed, 92 insertions(+), 83 deletions(-) diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 97ae2da0..8b77fe97 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -11,6 +11,7 @@ import com.dispose.mapper.DisposeTaskMapper; import com.dispose.mapper.TaskInfoMapper; import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.MulReturnType; +import com.dispose.pojo.vo.common.TaskInfo; import com.dispose.pojo.vo.common.TaskInfoDetail; import com.dispose.service.DisposeNodeManager; import com.dispose.service.TaskService; @@ -91,8 +92,8 @@ public class TaskServiceImpl implements TaskService { public void loadTaskFromDatabase() { // 从数据库中取出所有任务 List taskList = disposeTaskMapper.selectAll().stream() - .filter(this::taskIsRunning) - .collect(Collectors.toList()); + .filter(this::taskIsRunning) + .collect(Collectors.toList()); taskList.forEach(v -> { v.setRetryTimes(0); @@ -132,30 +133,30 @@ public class TaskServiceImpl implements TaskService { if (disposeDevice.size() == 0) { log.error("No such device to dispose this task: devId:{}, disposeIp:{}, type:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType()); + task.getDeviceId(), task.getDisposeIp(), task.getType()); return MulReturnType.builder() - .firstParam(ErrorCode.ERR_NOSUCHDEVICE) - .secondParam(-1L) - .build(); + .firstParam(ErrorCode.ERR_NOSUCHDEVICE) + .secondParam(-1L) + .build(); } // 查询当前是否有相同能力节点,相同用户,相同处置IP的且正在执行的处置任务,如果存在则忽略该次任务(依照产品需求) List taskList = taskCacheManager.getAllRunningTask() - .stream() - .filter(v -> ((taskId == null || taskId == -1L) || Objects.equals(v.getDeviceId(), task.getDeviceId())) - && Objects.equals(v.getAccountId(), task.getAccountId()) - && taskIsRunning(v) - && Objects.equals(v.getType(), task.getType()) - && Objects.equals(v.getDisposeIp(), task.getDisposeIp())) - .collect(Collectors.toList()); + .stream() + .filter(v -> ((taskId == null || taskId == -1L) || Objects.equals(v.getDeviceId(), task.getDeviceId())) + && Objects.equals(v.getAccountId(), task.getAccountId()) + && taskIsRunning(v) + && Objects.equals(v.getType(), task.getType()) + && Objects.equals(v.getDisposeIp(), task.getDisposeIp())) + .collect(Collectors.toList()); if (taskList.size() > 0) { log.error("Same dispose task is running: devId:{}, disposeIp:{}, type:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType()); + task.getDeviceId(), task.getDisposeIp(), task.getType()); return MulReturnType.builder() - .firstParam(ErrorCode.ERR_TASKRUNNING) - .secondParam(taskList.get(0).getId()) - .build(); + .firstParam(ErrorCode.ERR_TASKRUNNING) + .secondParam(taskList.get(0).getId()) + .build(); } // 将该任务写入数据库和缓存,等到定时任务真正启动该任务 @@ -168,7 +169,7 @@ public class TaskServiceImpl implements TaskService { ErrorCode err = taskCacheManager.addTask(cacheTask); log.info("Create new dispose task: devId:{}, disposeIp:{}, type:{}, result:{}", - task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); + task.getDeviceId(), task.getDisposeIp(), task.getType(), err.getMsg()); return MulReturnType.builder().firstParam(err).secondParam(task.getId()).build(); } @@ -211,26 +212,26 @@ public class TaskServiceImpl implements TaskService { // 异步启动处置任务 CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], planDuration)) - .whenComplete((v, ex) -> { - if (ex != null) { - log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); - // 增加设备执行清洗任务信息 - taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, - (long) ErrorCode.ERR_SYSTEMEXCEPTION.getCode()); - } else { - if (v.getFirstParam() != ErrorCode.ERR_OK) { - // 执行任务失败恢复缓存中的任务状态 - taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, (long) v.getFirstParam().getCode()); - log.error("Start task: taskId:{}, disposeIp:{}, error:{}", - taskId, task.getDisposeIp(), v.getFirstParam().getMsg()); + .whenComplete((v, ex) -> { + if (ex != null) { + log.error("Start task: taskId:{}, error:{}", taskId, ex.getMessage()); + // 增加设备执行清洗任务信息 + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, + (long) ErrorCode.ERR_SYSTEMEXCEPTION.getCode()); } else { - // 执行任务失败恢复缓存中的任务状态 - taskInfoMapper.addNewTaskInfo(taskId, k.getId(), v.getSecondParam(), (long) v.getFirstParam().getCode()); - log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", - taskId, task.getDisposeIp(), task.getType()); + if (v.getFirstParam() != ErrorCode.ERR_OK) { + // 执行任务失败恢复缓存中的任务状态 + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, (long) v.getFirstParam().getCode()); + log.error("Start task: taskId:{}, disposeIp:{}, error:{}", + taskId, task.getDisposeIp(), v.getFirstParam().getMsg()); + } else { + // 执行任务成功 + taskInfoMapper.addNewTaskInfo(taskId, k.getId(), v.getSecondParam(), (long) v.getFirstParam().getCode()); + log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", + taskId, task.getDisposeIp(), task.getType()); + } } - } - }); + }); }); } @@ -269,26 +270,34 @@ public class TaskServiceImpl implements TaskService { dev.forEach(k -> { DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); - // 异步启动处置任务 - CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], -1L)) - .whenComplete((v, ex) -> { - if (ex != null) { - // 恢复缓存中任务状态到先前状态 - taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); - } else { - if (v.getFirstParam() != ErrorCode.ERR_OK) { - // 恢复缓存中任务状态到先前状态 - taskCacheManager.upgradeTaskStatus(taskId, prdStatus); - log.error("Stop task: taskId:{}, error:{}", taskId, v.getFirstParam().getMsg()); - } else { - // 任务执行完成后更新数据库处置任务状态 - finishTask(taskId); - log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", - taskId, task.getDisposeIp(), task.getType()); - } - } - }); + List TaskInfoList = taskInfoMapper.getTaskInfo(taskId, k.getId()); + + TaskInfoList.forEach(t -> { + if (t.getExternId() == null) { + t.setExternId(-1L); + } + + // 异步启动处置任务 + CompletableFuture.supplyAsync(() -> dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], t.getExternId())) + .whenComplete((v, ex) -> { + if (ex != null) { + // 恢复缓存中任务状态到先前状态 + taskCacheManager.upgradeTaskStatus(taskId, prdStatus); + log.error("Stop task: taskId:{}, error:{}", taskId, ex.getMessage()); + } else { + if (v.getFirstParam() != ErrorCode.ERR_OK) { + // 恢复缓存中任务状态到先前状态 + taskCacheManager.upgradeTaskStatus(taskId, prdStatus); + log.error("Stop task: taskId:{}, error:{}", taskId, v.getFirstParam().getMsg()); + } else { + // 任务执行完成后更新数据库处置任务状态 + finishTask(taskId); + log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", + taskId, task.getDisposeIp(), task.getType()); + } + } + }); + }); }); } else { log.error("No such task: taskId:{}", taskId); @@ -330,7 +339,7 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsRunning(TaskInfoDetail task) { return task.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() - || task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode(); + || task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode(); } /** @@ -342,8 +351,8 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsExpired(TaskInfoDetail task) { return LocalDateTime.parse(task.getPlanEndTime(), - DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) - .isBefore(LocalDateTime.now()); + DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")) + .isBefore(LocalDateTime.now()); } /** @@ -355,11 +364,11 @@ public class TaskServiceImpl implements TaskService { @Override public List getNodeAllRunningTask(Long devId) { List taskList = taskCacheManager - .getAllRunningTask() - .stream() - .filter(v -> v.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() - && v.getDeviceId().equals(devId)) - .collect(Collectors.toList()); + .getAllRunningTask() + .stream() + .filter(v -> v.getCurrentStatus() == DisposeTaskStatus.TASK_RUNNING.getCode() + && v.getDeviceId().equals(devId)) + .collect(Collectors.toList()); if (taskList.size() > 0) { log.info("The device has tasks running: devId:{}, tasksRunningNumber:{}", devId, taskList.size()); @@ -430,9 +439,9 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getId(), taskId)) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getId(), taskId)) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -455,10 +464,10 @@ public class TaskServiceImpl implements TaskService { @Override public boolean taskIsExists(Long devId, Long userId, String disposeIp, int disposeType) { return taskCacheManager.getAllRunningTask().stream() - .anyMatch(v -> Objects.equals(v.getAccountId(), userId) - && Objects.equals(v.getDeviceId(), devId) - && Objects.equals(v.getDisposeIp(), disposeIp) - && Objects.equals(v.getType(), disposeType)); + .anyMatch(v -> Objects.equals(v.getAccountId(), userId) + && Objects.equals(v.getDeviceId(), devId) + && Objects.equals(v.getDisposeIp(), disposeIp) + && Objects.equals(v.getType(), disposeType)); } /** @@ -475,11 +484,11 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getDeviceId(), devId)) - && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && Objects.equals(v.getDisposeIp(), ipAddr) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getDeviceId(), devId)) + && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && Objects.equals(v.getDisposeIp(), ipAddr) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -503,10 +512,10 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> ((devId == -1L) || Objects.equals(v.getDeviceId(), devId)) - && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> ((devId == -1L) || Objects.equals(v.getDeviceId(), devId)) + && (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { @@ -529,9 +538,9 @@ public class TaskServiceImpl implements TaskService { // 根据处置IP,拿出所有正在处置的任务 List taskList = taskCacheManager.getAllRunningTask().stream() - .filter(v -> (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) - && taskIsRunning(v)) - .collect(Collectors.toList()); + .filter(v -> (Objects.equals(v.getType(), type) || type == DeviceCapacity.ALLCAPACITY.getCode()) + && taskIsRunning(v)) + .collect(Collectors.toList()); // 对符合条件的任务调用停止命令 taskList.forEach(v -> { From 82b391b77ae45f6e17f75494ef68f9af912bb4b7 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Wed, 1 Jul 2020 18:56:08 +0800 Subject: [PATCH 42/59] =?UTF-8?q?OCT=20REM:=201.=20=E8=AE=BE=E5=A4=87?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=BA=93=E5=A2=9E=E5=8A=A0=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E5=90=8D=EF=BC=8C=E5=AF=86=E7=A0=81=EF=BC=8C=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?URL=202.=20=E6=96=B0=E5=A2=9E=E8=AE=BE=E5=A4=87=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3=E9=9C=80=E8=A6=81=E5=A1=AB=E5=85=A5=E7=99=BB=E5=BD=95?= =?UTF-8?q?=E6=8E=A5=E5=8F=A3=E4=BF=A1=E6=81=AF=203.=20=E9=87=8D=E6=9E=84?= =?UTF-8?q?=E6=A0=B9=E6=8D=AEIP=E5=92=8C=E7=B1=BB=E5=9E=8B=E6=9F=A5?= =?UTF-8?q?=E6=89=BE=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=204.=20=E6=9B=B4=E6=96=B0=E6=95=B0=E6=8D=AE=E5=BA=93=E5=88=9B?= =?UTF-8?q?=E5=BB=BA=E8=84=9A=E6=9C=AC=205.=20=E6=9B=B4=E6=96=B0=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E5=BA=93=E5=88=9D=E5=A7=8B=E5=8C=96=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E8=84=9A=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/ConstValue.java | 21 ---------- .../DisposeNodeManagerController.java | 5 ++- .../com/dispose/dispose/DeviceRouter.java | 42 ++++++++++--------- .../com/dispose/dispose/impl/DpTechImpl.java | 37 ++++++++-------- .../com/dispose/dispose/impl/HaoHanImpl.java | 19 ++------- .../dispose/impl/VirtualDeviceImpl.java | 15 ++----- .../SoapPasswordCallbackHandler.java | 26 ------------ .../impl/UserAccountCacheManagerImpl.java | 7 ++-- .../com/dispose/mapper/TaskInfoMapper.java | 5 ++- .../dispose/pojo/entity/DisposeDevice.java | 6 +++ .../java/com/dispose/pojo/po/NewNodeInfo.java | 3 ++ .../service/impl/DisposeNodeManagerImpl.java | 8 ++-- .../dispose/service/impl/TaskServiceImpl.java | 24 ++--------- .../com/dispose/task/DeviceManagerTask.java | 5 +-- src/main/resources/db/data.sql | 4 +- src/main/resources/db/schema.sql | 3 ++ src/main/resources/mappers/DisposeDevice.xml | 12 +----- .../test/dptech/DPTechInterfaceTestCase.java | 14 +++---- 18 files changed, 89 insertions(+), 167 deletions(-) delete mode 100644 src/main/java/com/dispose/interceptor/SoapPasswordCallbackHandler.java diff --git a/src/main/java/com/dispose/common/ConstValue.java b/src/main/java/com/dispose/common/ConstValue.java index 5925da09..2d6543f4 100644 --- a/src/main/java/com/dispose/common/ConstValue.java +++ b/src/main/java/com/dispose/common/ConstValue.java @@ -31,27 +31,6 @@ public class ConstValue { public static final long TOKEN_EXPIRED_TIME_MS = TOKEN_TIMEOUT_MS; } - /** - * The type Soap wrapper const. - * - * @author - */ - public static class SoapWrapperConst { - /** - * The constant NAMESPACE_URI. - */ - public static final String NAMESPACE_URI = "http://%s/UMC/service/AbnormalFlowCleaningService"; - /** - * The constant USER_NAME. - */ -//public static final String SERVICE_ADDRESS = "http://10.88.77.15/UMC/service/AbnormalFlowCleaningService?wsdl"; - public static final String USER_NAME = "admin"; - /** - * The constant PASSWORD. - */ - public static final String PASSWORD = "UMCAdministrator"; - } - /** * The type Protocol. * diff --git a/src/main/java/com/dispose/controller/DisposeNodeManagerController.java b/src/main/java/com/dispose/controller/DisposeNodeManagerController.java index d6ef7831..c7280cd8 100644 --- a/src/main/java/com/dispose/controller/DisposeNodeManagerController.java +++ b/src/main/java/com/dispose/controller/DisposeNodeManagerController.java @@ -29,9 +29,7 @@ import org.springframework.web.bind.annotation.ResponseBody; import javax.annotation.Resource; import java.util.ArrayList; -import java.util.Arrays; import java.util.List; -import java.util.Objects; /** * The type Dispose node manager controller. @@ -94,6 +92,9 @@ public class DisposeNodeManagerController { .manufacturer(v.getManufacturer()) .model(v.getModel()) .version(v.getVersion()) + .userName(v.getUserName()) + .password(v.getPassword()) + .url(v.getUrl()) .build(); MulReturnType ret; try { diff --git a/src/main/java/com/dispose/dispose/DeviceRouter.java b/src/main/java/com/dispose/dispose/DeviceRouter.java index 83adcbb8..1aac2dc8 100644 --- a/src/main/java/com/dispose/dispose/DeviceRouter.java +++ b/src/main/java/com/dispose/dispose/DeviceRouter.java @@ -2,10 +2,10 @@ package com.dispose.dispose; import com.dispose.common.DisposeDeviceType; import com.dispose.common.GlobalVar; -import com.dispose.common.IPAddrType; import com.dispose.dispose.impl.DpTechImpl; import com.dispose.dispose.impl.HaoHanImpl; import com.dispose.dispose.impl.VirtualDeviceImpl; +import com.dispose.pojo.entity.DisposeDevice; import java.util.concurrent.ConcurrentHashMap; @@ -22,16 +22,9 @@ public class DeviceRouter { return devType + "_" + ipAddr; } - /** - * Device router factory dispose entry manager. - * - * @param devType the dev type - * @param ipAddr the ip addr - * @param ipType the ip type - * @return the dispose entry manager - */ - public static DisposeEntryManager deviceRouterFactory(int devType, String ipAddr, IPAddrType ipType) { - String mapKey = getMapKey(devType, ipAddr); + public static DisposeEntryManager deviceRouterFactory(DisposeDevice device) { + + String mapKey = getMapKey(device.getType(), device.getIpAddr()); // 判断缓存中是否创建过对象,如果创建过直接从缓存中获取 if (DEVICE_CACHE_MAP.containsKey(mapKey)) { @@ -41,13 +34,13 @@ public class DeviceRouter { // 第一次访问创建新对象并缓存 if (GlobalVar.USED_VIRTUAL_DISPOSE_MODE) { // 虚拟设备,供调试业务使用 - dev = new VirtualDeviceImpl(ipAddr); - } else if (devType == DisposeDeviceType.DPTECH_UMC.getCode()) { + dev = new VirtualDeviceImpl(device); + } else if (device.getType() == DisposeDeviceType.DPTECH_UMC.getCode()) { // 迪普设备 - dev = new DpTechImpl(ipAddr); - } else if (devType == DisposeDeviceType.HAOHAN_PLATFORM.getCode()) { + dev = new DpTechImpl(device); + } else if (device.getType() == DisposeDeviceType.HAOHAN_PLATFORM.getCode()) { // 浩瀚设备 - dev = new HaoHanImpl(ipAddr); + dev = new HaoHanImpl(device); } if (dev != null) { @@ -57,7 +50,7 @@ public class DeviceRouter { } // 始终返回一个虚拟设备作为默认设备 - DisposeEntryManager dev = new VirtualDeviceImpl(ipAddr); + DisposeEntryManager dev = new VirtualDeviceImpl(device); DEVICE_CACHE_MAP.put(mapKey, dev); return dev; } @@ -69,7 +62,18 @@ public class DeviceRouter { * @param ipAddr the ip addr * @return the dispose entry manager */ - public static DisposeEntryManager deviceRouterFactory(int devType, String ipAddr) { - return deviceRouterFactory(devType, ipAddr, IPAddrType.IPV4_TYPE); + public static DisposeEntryManager getDeviceRouterFactory(int devType, String ipAddr) { + + String mapKey = getMapKey(devType, ipAddr); + + // 判断缓存中是否创建过对象,如果创建过直接从缓存中获取 + if (DEVICE_CACHE_MAP.containsKey(mapKey)) { + return DEVICE_CACHE_MAP.get(mapKey); + } else { + // 始终返回一个虚拟设备作为默认设备 + DisposeEntryManager dev = new VirtualDeviceImpl(DisposeDevice.builder().build()); + DEVICE_CACHE_MAP.put(mapKey, dev); + return dev; + } } } diff --git a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java index ca1f88bd..b1c7924f 100644 --- a/src/main/java/com/dispose/dispose/impl/DpTechImpl.java +++ b/src/main/java/com/dispose/dispose/impl/DpTechImpl.java @@ -1,20 +1,19 @@ package com.dispose.dispose.impl; -import com.dispose.common.ConstValue; import com.dispose.common.DeviceCapacity; import com.dispose.common.DpTechAttackType; import com.dispose.common.ErrorCode; import com.dispose.common.GlobalVar; -import com.dispose.common.IPAddrType; import com.dispose.config.DisposeConfigure; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; -import com.dispose.interceptor.SoapPasswordCallbackHandler; +import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.DisposeDeviceCapacity; import com.dispose.pojo.po.MulReturnType; import com.dptech.dispose.AbnormalFlowCleaningServicePortType; import com.dptech.dispose.ArrayOfProtectionObjectDataForService; import com.dptech.dispose.NtcRequestResultInfo; +import lombok.Data; import lombok.extern.slf4j.Slf4j; import org.apache.cxf.endpoint.Client; import org.apache.cxf.frontend.ClientProxy; @@ -26,6 +25,7 @@ import org.apache.wss4j.dom.WSConstants; import org.apache.wss4j.dom.handler.WSHandlerConstants; import javax.annotation.Resource; +import javax.xml.ws.BindingProvider; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; @@ -38,37 +38,44 @@ import java.util.Map; * @author */ @Slf4j +@Data public class DpTechImpl implements DisposeEntryManager { private final AbnormalFlowCleaningServicePortType cleanTypePort; + private String password; + @Resource private DisposeConfigure disposeConfigure; /** * Instantiates a new Dp tech. * - * @param ipAddr the ip addr + * @param dev the dev */ - public DpTechImpl(String ipAddr) { + public DpTechImpl(DisposeDevice dev) { JaxWsProxyFactoryBean jaxWsProxyFactoryBean = new JaxWsProxyFactoryBean(); jaxWsProxyFactoryBean.setServiceClass(AbnormalFlowCleaningServicePortType.class); - jaxWsProxyFactoryBean.setAddress(String.format(ConstValue.SoapWrapperConst.NAMESPACE_URI, ipAddr)); + jaxWsProxyFactoryBean.setAddress(String.format(dev.getUrl(), dev.getIpAddr())); + + this.setPassword(dev.getPassword()); //WS-Security Head Map outProps = new HashMap<>(); outProps.put(WSHandlerConstants.ACTION, WSHandlerConstants.USERNAME_TOKEN); // 配置用户名,密码类型 - outProps.put(WSHandlerConstants.USER, ConstValue.SoapWrapperConst.USER_NAME); + outProps.put(WSHandlerConstants.USER, dev.getUserName()); outProps.put(WSHandlerConstants.PASSWORD_TYPE, WSConstants.PW_TEXT); - // 注册密码处理回调函数 - outProps.put(WSHandlerConstants.PW_CALLBACK_CLASS, SoapPasswordCallbackHandler.class.getName()); // 添加WSSecure头部验证信息 jaxWsProxyFactoryBean.getOutInterceptors().add(new WSS4JOutInterceptor(outProps)); this.cleanTypePort = (AbnormalFlowCleaningServicePortType) jaxWsProxyFactoryBean.create(); + Map ctx = ((BindingProvider) this.cleanTypePort).getRequestContext(); + ctx.put("password", dev.getPassword()); + ctx.put("username", dev.getUserName()); + // 配置连接,访问超时时间 Client proxy = ClientProxy.getClient(this.cleanTypePort); HTTPConduit conduit = (HTTPConduit) proxy.getConduit(); @@ -80,16 +87,6 @@ public class DpTechImpl implements DisposeEntryManager { conduit.setClient(policy); } - /** - * Instantiates a new Dp tech. - * - * @param ipAddr the ip addr - * @param type the type - */ - public DpTechImpl(String ipAddr, IPAddrType type) { - this(ipAddr); - } - /** * Gets version. * @@ -259,7 +256,7 @@ public class DpTechImpl implements DisposeEntryManager { for (int d : new int[]{0, 1}) { // 遍历所有攻击类型的清洗任务 for (DpTechAttackType t : DpTechAttackType.values()) { - NtcRequestResultInfo ret = cleanTypePort.stopAbnormalTaskForUMC(ipAddr, t.getCode(), d); + cleanTypePort.stopAbnormalTaskForUMC(ipAddr, t.getCode(), d); } } diff --git a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java index 74d345d3..94828e57 100644 --- a/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java +++ b/src/main/java/com/dispose/dispose/impl/HaoHanImpl.java @@ -3,9 +3,9 @@ package com.dispose.dispose.impl; import com.dispose.common.DeviceCapacity; import com.dispose.common.ErrorCode; import com.dispose.common.Http; -import com.dispose.common.IPAddrType; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; +import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.DisposeDeviceCapacity; import com.dispose.pojo.po.MulReturnType; import com.dispose.pojo.vo.haohan.CleanReq; @@ -34,21 +34,10 @@ public class HaoHanImpl implements DisposeEntryManager { /** * Instantiates a new Hao han. * - * @param ipAddr the ip addr + * @param dev the dev */ - public HaoHanImpl(String ipAddr) { - this(ipAddr, IPAddrType.IPV4_TYPE); - } - - /** - * Instantiates a new Hao han. - * - * @param ipAddr the ip addr - * @param type the type - */ - public HaoHanImpl(String ipAddr, IPAddrType type) { - //http://10.88.77.88:18080/DDoSClean/clean/cleanTaskFlow - deviceAddress = "http://" + ipAddr + "/DDoSClean/clean"; + public HaoHanImpl(DisposeDevice dev) { + deviceAddress = String.format(dev.getUrl(), dev.getIpAddr()); } /** diff --git a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java index 0b5124a5..56afb539 100644 --- a/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java +++ b/src/main/java/com/dispose/dispose/impl/VirtualDeviceImpl.java @@ -3,9 +3,9 @@ package com.dispose.dispose.impl; import com.dispose.common.DeviceCapacity; import com.dispose.common.ErrorCode; import com.dispose.common.GlobalVar; -import com.dispose.common.IPAddrType; import com.dispose.dispose.DisposeEntryManager; import com.dispose.dispose.po.DeviceInfo; +import com.dispose.pojo.entity.DisposeDevice; import com.dispose.pojo.po.DisposeDeviceCapacity; import com.dispose.pojo.po.MulReturnType; @@ -18,22 +18,13 @@ import java.util.List; * @author */ public class VirtualDeviceImpl implements DisposeEntryManager { - /** - * Instantiates a new Virtual device. - * - * @param ipAddr the ip addr - */ - public VirtualDeviceImpl(String ipAddr) { - - } /** * Instantiates a new Virtual device. * - * @param ipAddr the ip addr - * @param type the type + * @param dev the dev */ - public VirtualDeviceImpl(String ipAddr, IPAddrType type) { + public VirtualDeviceImpl(DisposeDevice dev) { } diff --git a/src/main/java/com/dispose/interceptor/SoapPasswordCallbackHandler.java b/src/main/java/com/dispose/interceptor/SoapPasswordCallbackHandler.java deleted file mode 100644 index c9fda8b2..00000000 --- a/src/main/java/com/dispose/interceptor/SoapPasswordCallbackHandler.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.dispose.interceptor; - -import com.dispose.common.ConstValue; -import org.apache.wss4j.common.ext.WSPasswordCallback; - -import javax.security.auth.callback.Callback; -import javax.security.auth.callback.CallbackHandler; - -/** - * The type Soap password callback handler. - * - * @author - */ -public class SoapPasswordCallbackHandler implements CallbackHandler { - /** - * Handle. - * - * @param callbacks the callbacks - */ - @Override - public void handle(Callback[] callbacks) { - // DPTech SOAP接口WSSecure头部密码填充 - WSPasswordCallback pc = (WSPasswordCallback) callbacks[0]; - pc.setPassword(ConstValue.SoapWrapperConst.PASSWORD); - } -} \ No newline at end of file diff --git a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java index ce94aaa1..d91c5c5b 100644 --- a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java +++ b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java @@ -51,10 +51,11 @@ public class UserAccountCacheManagerImpl implements UserAccountCacheManager { if (username == null || username.length() == 0) { log.error("User {} not logged in", username); return ErrorCode.ERR_LOGOUT; - } else if (ConstValue.SoapWrapperConst.USER_NAME.equals(username)) { - // admin 用户具有操作权限 - return ErrorCode.ERR_OK; } +// else if (ConstValue.SoapWrapperConst.USER_NAME.equals(username)) { +// // admin 用户具有操作权限 +// return ErrorCode.ERR_OK; +// } log.error("User {} not enough permissions", username); return ErrorCode.ERR_PERMISSION; diff --git a/src/main/java/com/dispose/mapper/TaskInfoMapper.java b/src/main/java/com/dispose/mapper/TaskInfoMapper.java index 9676e034..4c63663b 100644 --- a/src/main/java/com/dispose/mapper/TaskInfoMapper.java +++ b/src/main/java/com/dispose/mapper/TaskInfoMapper.java @@ -55,9 +55,10 @@ public interface TaskInfoMapper extends Mapper, MySqlMapper @Param("status") Long status); /** - * get task info status. + * Gets task info current status. * - * @param id the id + * @param id the id + * @return the task info current status */ int getTaskInfoCurrentStatus(Long id); } diff --git a/src/main/java/com/dispose/pojo/entity/DisposeDevice.java b/src/main/java/com/dispose/pojo/entity/DisposeDevice.java index 862c9db8..03031eed 100644 --- a/src/main/java/com/dispose/pojo/entity/DisposeDevice.java +++ b/src/main/java/com/dispose/pojo/entity/DisposeDevice.java @@ -54,6 +54,12 @@ public class DisposeDevice implements Serializable { private String version; + private String userName; + + private String password; + + private String url; + private String readme; private Integer status; diff --git a/src/main/java/com/dispose/pojo/po/NewNodeInfo.java b/src/main/java/com/dispose/pojo/po/NewNodeInfo.java index c0ad4cee..593a890e 100644 --- a/src/main/java/com/dispose/pojo/po/NewNodeInfo.java +++ b/src/main/java/com/dispose/pojo/po/NewNodeInfo.java @@ -24,6 +24,9 @@ public class NewNodeInfo { private String name; private String manufacturer; private String model; + private String userName; + private String password; + private String url; private String version; private String readme; } diff --git a/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java b/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java index d1c43ca1..7ea94d87 100644 --- a/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java +++ b/src/main/java/com/dispose/service/impl/DisposeNodeManagerImpl.java @@ -62,9 +62,10 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager { devList.forEach(v -> { // 对每个设备进行初始化 - DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(v.getType(), - v.getIpAddr(), IPAddrType.getIpAddrType(v.getIpAddr())); + //DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(v.getType(), + // v.getIpAddr(), IPAddrType.getIpAddrType(v.getIpAddr())); + DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(v); // 链接状态 v.setLinkStatus(dp.getDeviceLinkStatus() ? 1 : 0); // 版本信息 @@ -145,8 +146,7 @@ public class DisposeNodeManagerImpl implements DisposeNodeManager { try { // 获取处置设备硬件访问接口 - dp = DeviceRouter.deviceRouterFactory(dev.getType(), - dev.getIpAddr(), IPAddrType.getIpAddrType(dev.getIpAddr())); + dp = DeviceRouter.getDeviceRouterFactory(dev.getType(), dev.getIpAddr()); // 判断设备是否在线 if (!dp.getDeviceLinkStatus()) { diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 8b77fe97..7b507705 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -53,22 +53,6 @@ public class TaskServiceImpl implements TaskService { @Resource private TaskInfoMapper taskInfoMapper; - private List getDisposeDeviceHandle(String disposeIp, int devCapType) { - List devEntry = new ArrayList<>(); - - List dev = getDisposeNode(disposeIp, devCapType); - - // 判断是否有支持处置该IP的能力 - if (dev.size() == 0) { - log.info("No dispose device handle: disposeIp:{}, devCapType:{}", disposeIp, devCapType); - return devEntry; - } - - dev.forEach(v -> devEntry.add(DeviceRouter.deviceRouterFactory(v.getType(), v.getIpAddr()))); - - return devEntry; - } - private List getDisposeNode(String disposeIp, int devCapType) { DeviceCapacity cap; @@ -208,7 +192,7 @@ public class TaskServiceImpl implements TaskService { taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); dev.forEach(k -> { - DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); + DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(k.getType(), k.getIpAddr()); // 异步启动处置任务 CompletableFuture.supplyAsync(() -> dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], planDuration)) @@ -268,11 +252,11 @@ public class TaskServiceImpl implements TaskService { } dev.forEach(k -> { - DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(k.getType(), k.getIpAddr()); + DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(k.getType(), k.getIpAddr()); - List TaskInfoList = taskInfoMapper.getTaskInfo(taskId, k.getId()); + List taskInfoList = taskInfoMapper.getTaskInfo(taskId, k.getId()); - TaskInfoList.forEach(t -> { + taskInfoList.forEach(t -> { if (t.getExternId() == null) { t.setExternId(-1L); } diff --git a/src/main/java/com/dispose/task/DeviceManagerTask.java b/src/main/java/com/dispose/task/DeviceManagerTask.java index 2ade0e13..b4a91f0b 100644 --- a/src/main/java/com/dispose/task/DeviceManagerTask.java +++ b/src/main/java/com/dispose/task/DeviceManagerTask.java @@ -1,6 +1,5 @@ package com.dispose.task; -import com.dispose.common.IPAddrType; import com.dispose.dispose.DeviceRouter; import com.dispose.dispose.DisposeEntryManager; import com.dispose.pojo.entity.DisposeDevice; @@ -31,9 +30,7 @@ public class DeviceManagerTask { List devList = disposeNodeManager.getAllDisposeDevice(); devList.forEach(v -> { - DisposeEntryManager dp = DeviceRouter.deviceRouterFactory(v.getType(), - v.getIpAddr(), - IPAddrType.getIpAddrType(v.getIpAddr())); + DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(v.getType(), v.getIpAddr()); // 自动更新设备心跳状态 v.setLinkStatus(dp.getDeviceLinkStatus() ? 1 : 0); // 自动读取设备系统版本信息 diff --git a/src/main/resources/db/data.sql b/src/main/resources/db/data.sql index b817732c..b30bd195 100644 --- a/src/main/resources/db/data.sql +++ b/src/main/resources/db/data.sql @@ -1,8 +1,8 @@ -- ---------------------------- -- Records of dispose_device -- ---------------------------- -INSERT INTO `dispose_device` VALUES (1, '10.88.77.15', 0, 0, '中移杭研实验室迪普清洗设备', 'DPTech', 'UMC', '5.7.13', '实验室测试设备', 0); -INSERT INTO `dispose_device` VALUES (2, '10.88.77.88:18080', 1, 0, '中移杭研实验室浩瀚清洗设备', 'HaoHan', 'Unknown', 'Unknown', '实验室测试设备', 0); +INSERT INTO `dispose_device` VALUES (1, '10.88.77.88:18080', 1, 0, '中移杭研实验室浩瀚清洗设备', 'HaoHan', 'Unknown', 'Unknown', '', '', 'http://%s/DDoSClean/clean', '实验室测试设备', 0); +INSERT INTO `dispose_device` VALUES (2, '10.88.77.15', 0, 0, '中移杭研实验室迪普清洗设备', 'DPTech', 'UMC', '5.7.13', 'admin', 'UMCAdministrator', 'http://%s/UMC/service/AbnormalFlowCleaningService', '实验室测试设备', 0); -- ---------------------------- diff --git a/src/main/resources/db/schema.sql b/src/main/resources/db/schema.sql index 1b14644f..59f7caa3 100644 --- a/src/main/resources/db/schema.sql +++ b/src/main/resources/db/schema.sql @@ -28,6 +28,9 @@ CREATE TABLE `dispose_device` `manufacturer` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '生产厂商', `model` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '型号', `version` varchar(128) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '软件版本', + `userName` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '系统管理用户名', + `password` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '系统管理密码', + `url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT 'URL类型', `readme` varchar(1024) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '备注', `status` int(11) NOT NULL DEFAULT 0 COMMENT '状态,0:正常, 1:删除', PRIMARY KEY (`id`) USING BTREE, diff --git a/src/main/resources/mappers/DisposeDevice.xml b/src/main/resources/mappers/DisposeDevice.xml index 84e183a5..50390f48 100644 --- a/src/main/resources/mappers/DisposeDevice.xml +++ b/src/main/resources/mappers/DisposeDevice.xml @@ -5,11 +5,11 @@ INSERT IGNORE INTO dispose_device(ipAddr, type, areaCode, name, manufacturer, - model, version, readme, status) + model, version, userName, password, url, readme, status) VALUES (#{ipAddr}, #{type}, #{areaCode}, #{name}, #{manufacturer}, - #{model}, #{version}, #{readme}, 0) + #{model}, #{version}, #{userName}, #{password}, #{url}, #{readme}, 0) + + DELETE + task_info + FROM task_info + WHERE task_info.deviceId = #{deviceId} + + From 53f6bf54b1f308a1daca7871b0e72c9745c14164 Mon Sep 17 00:00:00 2001 From: chenlinghy Date: Tue, 7 Jul 2020 16:41:23 +0800 Subject: [PATCH 56/59] =?UTF-8?q?OCT=20REM:=201.=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E4=BD=BF=E7=94=A8=E5=B9=BF=E6=92=AD=E6=96=B9=E5=BC=8F=E5=AF=B9?= =?UTF-8?q?=E6=89=80=E6=9C=89=E5=A4=84=E7=BD=AE=E8=AE=BE=E5=A4=87=E4=B8=8B?= =?UTF-8?q?=E5=8F=91=E5=A4=84=E7=BD=AE=E4=BB=BB=E5=8A=A1=E7=9A=84=E5=86=92?= =?UTF-8?q?=E7=83=9F=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TaskControllerSmokeTest.java | 51 +++++++++++++++++-- 1 file changed, 47 insertions(+), 4 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java index c4b11955..55af2116 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java @@ -51,7 +51,7 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { private ObjectMapper objectMapper; @Test - public void t1_NormalTaskTest() throws Exception { + public void t1_BroadcastNormalTaskTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"id\\\":-1," + "\\\"type\\\":0, " + @@ -87,9 +87,52 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { } } + @Test + public void t2_DesignatedDeviceNormalTaskTest() throws Exception { + + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + + "\"msgContent\":\"{\\\"id\\\":1," + + "\\\"type\\\":0, " + + "\\\"disposeIp\\\":\\\"192.168.4.2\\\", " + + "\\\"disposeTime\\\":120}\"}"; + + String taskStart = mockMvc.perform(MockMvcRequestBuilders + .post("/task/start") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + StartTaskRsp startTaskRsp = objectMapper.readValue(verifyResp(taskStart), StartTaskRsp.class); + + Assert.assertNotNull(startTaskRsp); + Assert.assertNotNull(startTaskRsp.getStatus()); + Assert.assertNotNull(startTaskRsp.getMessage()); + + System.out.println(startTaskRsp.getStatus()); + + if (startTaskRsp.getStatus() == 0) { + Assert.assertNotNull(String.valueOf(startTaskRsp.getExpireTime())); + Assert.assertNotNull(startTaskRsp.getId()); + Assert.assertNotNull(startTaskRsp.getTaskId()); + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else if (startTaskRsp.getStatus() == 26) { + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_TASKRUNNING.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_TASKRUNNING.getMsg()); + }else if(startTaskRsp.getStatus() == 19){ + Assert.assertEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_NOSUCHDEVICE.getCode())); + Assert.assertEquals(startTaskRsp.getMessage(), ErrorCode.ERR_NOSUCHDEVICE.getMsg()); + } + } + @Test - public void t2_NormalStopTaskTest() throws Exception { + public void t3_NormalStopTaskTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[\\\"60\\\", \\\"2\\\" ]}\"}"; @@ -125,7 +168,7 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { @Test - public void t3_NormalStopTaskByDisposeIpTest() throws Exception { + public void t4_NormalStopTaskByDisposeIpTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\": \"{\\\"items\\\":" + "[{\\\"id\\\":\\\"1\\\",\\\"type\\\":0,\\\"disposeIp\\\":\\\"192.168.3.3\\\"}]}\"}"; @@ -160,7 +203,7 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { } @Test - public void t4_NormalGetNodeDetailedInfoTest() throws Exception { + public void t5_NormalGetNodeDetailedInfoTest() throws Exception { String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988," + "\"msgContent\":\"{\\\"taskId\\\":[\\\"60\\\", \\\"2\\\"]}\"}"; From 21c2c05f0ae2dc933f0487f07fd561670378a79a Mon Sep 17 00:00:00 2001 From: wangyiyun Date: Tue, 7 Jul 2020 17:40:02 +0800 Subject: [PATCH 57/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E5=81=9C=E6=AD=A2=E5=85=A8=E9=83=A8=E6=B8=85=E6=B4=97=E4=BB=BB?= =?UTF-8?q?=E5=8A=A1=EF=BC=88=E5=A4=84=E7=BD=AE=EF=BC=89=E7=9A=84=E5=86=92?= =?UTF-8?q?=E7=83=9F=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/TaskControllerSmokeTest.java | 37 +++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java index 55af2116..cb4eabbe 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerSmokeTest.java @@ -239,4 +239,41 @@ public class TaskControllerSmokeTest extends InitTestEnvironment { } } } + /** + * t6 stop all clean task test. + */ + @Test + public void t6_NormalStopAllCleanTaskTest() throws Exception { + String reqData = "{\"ver\":2,\"cryptoType\":0,\"timeStamp\":1587604296988,\"msgContent\":\"{\\\"type\\\":0}\"}"; + + String ret = mockMvc.perform(MockMvcRequestBuilders + .post("/task/stop_all") + .contentType(MediaType.APPLICATION_JSON) + .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) + .content(reqData)) + .andDo(print()).andExpect(status().isOk()) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) + .andReturn() + .getResponse() + .getContentAsString(); + + TaskInfoRsp taskStopByIpRsp = objectMapper.readValue(verifyResp(ret), TaskInfoRsp.class); + + List taskInfoList = taskStopByIpRsp.getItems(); + for (TaskInfoData task : taskInfoList + ) { + Assert.assertNotNull(task.getStatus()); + Assert.assertNotNull(task.getMessage()); + + if (task.getStatus() == 0) { + Assert.assertNotNull(task.getId()); + Assert.assertNotNull(task.getTaskId()); + Assert.assertEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); + } else { + Assert.assertNotEquals(Long.valueOf(task.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); + Assert.assertNotEquals(task.getMessage(), ErrorCode.ERR_OK.getMsg()); + } + } + } } From 83d19736cff7e4790a664d6075f2548274455464 Mon Sep 17 00:00:00 2001 From: HuangXin Date: Tue, 7 Jul 2020 19:16:55 +0800 Subject: [PATCH 58/59] =?UTF-8?q?OCT=20REM:=201.=20CheckStyle=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/dispose/common/IPAddrType.java | 8 +-- .../impl/UserAccountCacheManagerImpl.java | 5 -- .../dispose/service/impl/TaskServiceImpl.java | 61 ------------------- 3 files changed, 4 insertions(+), 70 deletions(-) diff --git a/src/main/java/com/dispose/common/IPAddrType.java b/src/main/java/com/dispose/common/IPAddrType.java index d3f720d1..dc8faa99 100644 --- a/src/main/java/com/dispose/common/IPAddrType.java +++ b/src/main/java/com/dispose/common/IPAddrType.java @@ -92,6 +92,8 @@ public enum IPAddrType { */ public static boolean isIpAddress(String ipAddr) { + final String ipv6PortChar = "["; + int counts = ipAddr.length() - ipAddr.replaceAll(GlobalVar.STRING_IPV6_FLAG, "").length(); String ipv4Regex = "^(1\\d{2}|2[0-4]\\d|25[0-5]|[1-9]\\d|[1-9])\\." @@ -106,14 +108,12 @@ public enum IPAddrType { return ipAddr.matches(ipv4Regex); // v4 + port case 1: - String ipv4 = ipAddr.substring(0, ipAddr.lastIndexOf(":")); - //String port = ipAddr.substring(ipAddr.lastIndexOf(":") + 1); + String ipv4 = ipAddr.substring(0, ipAddr.lastIndexOf(GlobalVar.STRING_IPV6_FLAG)); return ipv4.matches(ipv4Regex); default: // Ip v6 + port if (ipAddr.contains("[")) { - String ipv6 = ipAddr.substring(1, ipAddr.lastIndexOf("]")); - //String port = ipAddr.substring(ipAddr.lastIndexOf("]:") + 1); + String ipv6 = ipAddr.substring(1, ipAddr.lastIndexOf(ipv6PortChar)); return ipv6.matches(ipv6Regex); } else { return ipAddr.matches(ipv6Regex); diff --git a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java index 9edf8e0f..f5a40841 100644 --- a/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java +++ b/src/main/java/com/dispose/manager/impl/UserAccountCacheManagerImpl.java @@ -52,12 +52,7 @@ public class UserAccountCacheManagerImpl implements UserAccountCacheManager { log.error("User {} not logged in", username); return ErrorCode.ERR_LOGOUT; } -// else if (ConstValue.SoapWrapperConst.USER_NAME.equals(username)) { -// // admin 用户具有操作权限 -// return ErrorCode.ERR_OK; -// } - //log.error("User {} not enough permissions", username); return ErrorCode.ERR_OK; } diff --git a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java index 05dcb308..0525002d 100644 --- a/src/main/java/com/dispose/service/impl/TaskServiceImpl.java +++ b/src/main/java/com/dispose/service/impl/TaskServiceImpl.java @@ -186,37 +186,6 @@ public class TaskServiceImpl implements TaskService { return ErrorCode.ERR_NOSUCHDEVICE; } -// // 对新建的任务执行启动操作 -// if (task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode()) { -// // 更新任务状态为进行中 -// taskCacheManager.upgradeTaskStatus(taskId, DisposeTaskStatus.TASK_RUNNING.getCode()); -// -// dev.forEach(k -> { -// DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(k.getType(), k.getIpAddr()); -// -// MulReturnType ret = dp.runDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], planDuration); -// -// if (ret.getFirstParam() == ErrorCode.ERR_SYSTEMEXCEPTION) { -// log.error("Start task: taskId:{}, error:{}", taskId, ret.getFirstParam()); -// // 增加设备执行清洗任务信息 -// taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, -// (long) ErrorCode.ERR_SYSTEMEXCEPTION.getCode()); -// } else { -// if (ret.getFirstParam() != ErrorCode.ERR_OK) { -// // 执行任务失败恢复缓存中的任务状态 -// taskInfoMapper.addNewTaskInfo(taskId, k.getId(), null, (long) ret.getFirstParam().getCode()); -// log.error("Start task: taskId:{}, disposeIp:{}, error:{}", -// taskId, task.getDisposeIp(), ret.getFirstParam()); -// } else { -// // 执行任务成功 -// taskInfoMapper.addNewTaskInfo(taskId, k.getId(), ret.getSecondParam(), (long) ret.getFirstParam().getCode()); -// log.info("Start task finished: taskId:{}, disposeId:{}, type:{}", -// taskId, task.getDisposeIp(), task.getType()); -// } -// } -// }); -// } - // 对新建的任务执行启动操作 if (task.getCurrentStatus() == DisposeTaskStatus.TASK_NEW.getCode()) { // 更新任务状态为进行中 @@ -281,36 +250,6 @@ public class TaskServiceImpl implements TaskService { return err; } -// dev.forEach(k -> { -// DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(k.getType(), k.getIpAddr()); -// -// TaskInfo taskInfo = taskInfoMapper.getTaskInfo(taskId, k.getId()); -// -// MulReturnType ret = dp.stopDispose(task.getDisposeIp(), DeviceCapacity.values()[task.getType()], -// (taskInfo == null || taskInfo.getExternId() == null) ? -1 : taskInfo.getExternId()); -// -// if (ret.getFirstParam() == ErrorCode.ERR_SYSTEMEXCEPTION) { -// // 恢复缓存中任务状态到先前状态 -// taskCacheManager.upgradeTaskStatus(taskId, prdStatus); -// log.error("Stop task: taskId:{}, error:{}", taskId, ret.getFirstParam()); -// } else { -// if (ret.getFirstParam() != ErrorCode.ERR_OK) { -// // 恢复缓存中任务状态到先前状态 -// taskCacheManager.upgradeTaskStatus(taskId, prdStatus); -// log.error("Stop task: taskId:{}, error:{}", taskId, ret.getFirstParam()); -// } else { -// // 任务执行完成后更新数据库处置任务状态 -// finishTask(taskId); -// log.info("Stop task finished: taskId:{}, disposeId:{}, type:{}", -// taskId, task.getDisposeIp(), task.getType()); -// } -// } -// }); -// } else { -// log.error("No such task: taskId:{}", taskId); -// return ErrorCode.ERR_NOSUCHTASK; -// } - dev.forEach(k -> { DisposeEntryManager dp = DeviceRouter.getDeviceRouterFactory(k.getType(), k.getIpAddr()); From 92d695b323c6befc453bf90b48ae3ee02571f8ec Mon Sep 17 00:00:00 2001 From: HuangXin Date: Tue, 7 Jul 2020 19:42:04 +0800 Subject: [PATCH 59/59] =?UTF-8?q?OCT=20REM:=201.=20=E6=9B=B4=E6=96=B0?= =?UTF-8?q?=E6=B5=8B=E8=AF=95=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../DeviceNodeManagerControllerTest.java | 2 +- .../test/controller/TaskControllerTest.java | 2 -- .../test/mapper/DisposeDeviceMapperTest.java | 30 ++++++++----------- .../test/mapper/DisposeTaskMapperTest.java | 17 +++++------ .../test/service/DisposeNodeManagerTest.java | 5 ++-- 5 files changed, 23 insertions(+), 33 deletions(-) diff --git a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java index f458bc93..6ffc08d2 100644 --- a/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java +++ b/src/test/java/com/dispose/test/controller/DeviceNodeManagerControllerTest.java @@ -281,7 +281,7 @@ public class DeviceNodeManagerControllerTest extends InitTestEnvironment { .header("Authorization", GlobalVar.STRING_HTTP_AUTH_HEAD + getLogToken()) .content(objectMapper.writeValueAsString(reqInfo))) .andDo(print()).andExpect(status().isOk()) - .andExpect(jsonPath("$.code").value(525)) + .andExpect(jsonPath("$.code").value(ErrorCode.ERR_OK.getHttpCode())) .andReturn() .getResponse() .getContentAsString(); diff --git a/src/test/java/com/dispose/test/controller/TaskControllerTest.java b/src/test/java/com/dispose/test/controller/TaskControllerTest.java index ad53f2c0..9fbf07b9 100644 --- a/src/test/java/com/dispose/test/controller/TaskControllerTest.java +++ b/src/test/java/com/dispose/test/controller/TaskControllerTest.java @@ -168,8 +168,6 @@ public class TaskControllerTest extends InitTestEnvironment { Assert.assertNotEquals(Long.valueOf(startTaskRsp.getStatus()), Long.valueOf(ErrorCode.ERR_OK.getCode())); Assert.assertNotEquals(startTaskRsp.getMessage(), ErrorCode.ERR_OK.getMsg()); } - - Thread.sleep(1000 * 300); } /** diff --git a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java index daf5e71a..d60ef000 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeDeviceMapperTest.java @@ -135,24 +135,20 @@ public class DisposeDeviceMapperTest extends InitTestEnvironment { }); } - /** - * T 0 del dispose device by ip. - * - * @throws JsonProcessingException the json processing exception - */ - @Test - public void t0_delDisposeDeviceByIp() throws JsonProcessingException { - String ipAddr = "10.88.77.15"; - disposeDeviceMapper.delDisposeDeviceByIp(ipAddr); - List dp = disposeDeviceMapper.selectAll(); - log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(dp)); - dp.forEach(v -> { - if (v.getIpAddr().equals(ipAddr)) { - Assert.fail(); - } - }); - } +// @Test +// public void t0_delDisposeDeviceByIp() throws JsonProcessingException { +// String ipAddr = "10.88.77.15"; +// disposeDeviceMapper.delDisposeDeviceByIp(ipAddr); +// +// List dp = disposeDeviceMapper.selectAll(); +// log.info(objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(dp)); +// dp.forEach(v -> { +// if (v.getIpAddr().equals(ipAddr)) { +// Assert.fail(); +// } +// }); +// } /** * T 6 get dispose device by ip is not existed. diff --git a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java index 00fb7fc7..01a7b840 100644 --- a/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java +++ b/src/test/java/com/dispose/test/mapper/DisposeTaskMapperTest.java @@ -100,16 +100,13 @@ public class DisposeTaskMapperTest extends InitTestEnvironment { Assert.assertNotNull(disposeTaskMapper.getTaskById(taskData.getId())); } - /** - * Remove task test. - */ - @Test - public void t99_removeTaskTest() { - disposeTaskMapper.selectAll().forEach(v -> { - disposeTaskMapper.removeTaskById(v.getId()); - Assert.assertNull(disposeTaskMapper.getTaskById(v.getId())); - }); - } +// @Test +// public void t99_removeTaskTest() { +// disposeTaskMapper.selectAll().forEach(v -> { +// disposeTaskMapper.removeTaskById(v.getId()); +// Assert.assertNull(disposeTaskMapper.getTaskById(v.getId())); +// }); +// } /** * T 2 change task status test. diff --git a/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java b/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java index c49b043c..1c95e748 100644 --- a/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java +++ b/src/test/java/com/dispose/test/service/DisposeNodeManagerTest.java @@ -41,8 +41,7 @@ public class DisposeNodeManagerTest extends InitTestEnvironment { * The Un used ip addr. */ private final String[] unUsedIpAddr = new String[]{"192.168.3.1", "192.168.3.6", - "192.168.6.8", "192.168.6.10", - "0.0.0.0", "255.255.255.255"}; + "192.168.6.8", "192.168.6.10", "255.255.255.255"}; /** * The Object mapper. */ @@ -86,7 +85,7 @@ public class DisposeNodeManagerTest extends InitTestEnvironment { log.info("Test:{} --> {}", s, objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString( disposeNodeManager.getDisposeDevice(s, DeviceCapacity.CLEANUP) )); - Assert.assertNull(disposeNodeManager.getDisposeDevice(s, DeviceCapacity.CLEANUP)); + Assert.assertEquals(disposeNodeManager.getDisposeDevice(s, DeviceCapacity.CLEANUP).size(), 0); } }