From 32aa89c49e9a63d53e936cc77a0beca79c83bf27 Mon Sep 17 00:00:00 2001 From: jamal-khey Date: Sun, 1 Oct 2023 23:09:55 +0200 Subject: [PATCH] test get all modifications (stashed or not) in one call Signed-off-by: jamal-khey --- .../server/ModificationControllerTest.java | 47 +++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/src/test/java/org/gridsuite/modification/server/ModificationControllerTest.java b/src/test/java/org/gridsuite/modification/server/ModificationControllerTest.java index 1af06336b..76d712d30 100644 --- a/src/test/java/org/gridsuite/modification/server/ModificationControllerTest.java +++ b/src/test/java/org/gridsuite/modification/server/ModificationControllerTest.java @@ -1123,6 +1123,7 @@ private void testNetworkModificationsCount(UUID groupUuid, int actualSize) throw assertEquals(actualSize, modificationsTestGroupId.size()); } + @Test public void shouldGetPosition() { var network = networkStoreService.getNetwork(TEST_NETWORK_ID, null); @@ -1326,4 +1327,50 @@ public void testDeleteStashedNetworkModifications() throws Exception { assertEquals(0, modificationRepository.getModifications(TEST_GROUP_ID, false, true, true).size()); mockMvc.perform(delete("/v1/groups/" + UUID.randomUUID() + "/stashed-modifications").queryParam("errorOnGroupNotFound", "false")).andExpect(status().isOk()); } + + @Test + public void testGetAllNetworkModifications() throws Exception { + List loadModificationInfosList = List.of( + EquipmentAttributeModificationInfos.builder() + .equipmentType(IdentifiableType.LOAD) + .equipmentAttributeName("v1load") + .equipmentId("v1load") + .build(), + EquipmentAttributeModificationInfos.builder() + .equipmentType(IdentifiableType.LOAD) + .equipmentAttributeName("v2load") + .equipmentId("v2load") + .build()); + loadModificationInfosList.stream().forEach(loadModificationInfos -> { + try { + String loadModificationInfosJson = objectWriter.writeValueAsString(loadModificationInfos); + MvcResult mvcResult = mockMvc.perform(post(URI_NETWORK_MODIF) + .content(loadModificationInfosJson) + .contentType(MediaType.APPLICATION_JSON)) + .andExpect(status().isOk()) + .andReturn(); + assertApplicationStatusOK(mvcResult); + } catch (Exception e) { + e.printStackTrace(); + } + }); + + List modifications = modificationRepository.getModifications(TEST_GROUP_ID, false, true); + assertEquals(2, modifications.size()); + + mockMvc.perform(delete(URI_NETWORK_MODIF_BASE) + .queryParam("groupUuid", TEST_GROUP_ID.toString()) + .queryParam("uuids", modifications.get(0).getUuid().toString()) + .queryParam("stash", "true")) + .andExpect(status().isOk()); + MvcResult mvcResult = mockMvc.perform(get("/v1/groups/{groupUuid}/modifications", TEST_GROUP_ID)).andExpectAll( + status().isOk(), + content().contentType(MediaType.APPLICATION_JSON)) + .andReturn(); + String resultAsString = mvcResult.getResponse().getContentAsString(); + List bsicListResulModifInfos = mapper.readValue(resultAsString, new TypeReference<>() { }); + assertEquals(2, bsicListResulModifInfos.size()); + assertEquals(bsicListResulModifInfos.get(0).getStashed(), true); + assertEquals(bsicListResulModifInfos.get(1).getStashed(), false); + } }