Skip to content

Commit 8cd1350

Browse files
author
Slimane AMAR
committed
Add a util method to make an http async request in the tests
1 parent b286aba commit 8cd1350

File tree

5 files changed

+48
-198
lines changed

5 files changed

+48
-198
lines changed

src/main/java/org/gridsuite/modification/server/repositories/NetworkModificationRepository.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -549,11 +549,6 @@ public Integer getModificationsCount(@NonNull UUID groupUuid, boolean stashed) {
549549
return modificationRepository.countByGroupIdAndStashed(groupUuid, stashed);
550550
}
551551

552-
@Transactional(readOnly = true)
553-
public List<ModificationInfos> getModificationsInfos(@NonNull List<UUID> uuids) {
554-
return getModificationsInfosNonTransactional(uuids);
555-
}
556-
557552
private List<ModificationInfos> getModificationsInfosNonTransactional(List<UUID> uuids) {
558553
// Spring-data findAllById doc says: the order of elements in the result is not guaranteed
559554
Map<UUID, ModificationEntity> entities = modificationRepository.findAllById(uuids)

src/test/java/org/gridsuite/modification/server/ModificationControllerTest.java

Lines changed: 9 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,7 @@
7474
import static org.gridsuite.modification.server.impacts.TestImpactUtils.*;
7575
import static org.gridsuite.modification.server.report.NetworkModificationServerReportResourceBundle.ERROR_MESSAGE_KEY;
7676
import static org.gridsuite.modification.server.utils.TestUtils.assertLogMessage;
77+
import static org.gridsuite.modification.server.utils.TestUtils.runRequestAsync;
7778
import static org.gridsuite.modification.server.utils.assertions.Assertions.assertThat;
7879
import static org.junit.jupiter.api.Assertions.*;
7980
import static org.mockito.ArgumentMatchers.*;
@@ -1034,14 +1035,7 @@ void testDuplicateModificationGroup() throws Exception {
10341035
MvcResult mvcResult;
10351036
VoltageLevelCreationInfos vl1 = ModificationCreation.getCreationVoltageLevel("s1", "vl1Id", "vl1Name");
10361037
String bodyJson = getJsonBody(vl1, TEST_NETWORK_BUS_BREAKER_ID, null);
1037-
ResultActions mockMvcResultActions = mockMvc.perform(
1038-
post(NETWORK_MODIFICATION_URI)
1039-
.content(bodyJson)
1040-
.contentType(MediaType.APPLICATION_JSON))
1041-
.andExpect(request().asyncStarted());
1042-
mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
1043-
.andExpect(status().isOk())
1044-
.andReturn().getResponse().getContentAsString();
1038+
runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(bodyJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
10451039

10461040
// create new line in voltage levels with node/breaker topology
10471041
// between voltage level "v1" and busbar section "bus1" and
@@ -1072,14 +1066,7 @@ void testDuplicateModificationGroup() throws Exception {
10721066
.build();
10731067
bodyJson = getJsonBody(lineCreationInfos, TEST_NETWORK_BUS_BREAKER_ID, null);
10741068

1075-
mockMvcResultActions = mockMvc.perform(
1076-
post(NETWORK_MODIFICATION_URI)
1077-
.content(bodyJson)
1078-
.contentType(MediaType.APPLICATION_JSON))
1079-
.andExpect(request().asyncStarted());
1080-
mvcResult = mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
1081-
.andExpect(status().isOk())
1082-
.andReturn();
1069+
mvcResult = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(bodyJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
10831070
assertApplicationStatusOK(mvcResult);
10841071
String resultAsString = mvcResult.getResponse().getContentAsString();
10851072
testBranchCreationImpacts(mapper, resultAsString, Set.of("s1", "s2"));
@@ -1097,13 +1084,7 @@ void testDuplicateModificationGroup() throws Exception {
10971084
10.0, "AttPointId", "attPointName", null, "v4",
10981085
"1.A", attachmentLine, "nl1", "NewLine1", "nl2", "NewLine2");
10991086
String bodyJson2 = getJsonBody(lineAttachToVL, TEST_NETWORK_ID, NetworkCreation.VARIANT_ID);
1100-
mockMvcResultActions = mockMvc.perform(
1101-
post(NETWORK_MODIFICATION_URI)
1102-
.content(bodyJson2)
1103-
.contentType(MediaType.APPLICATION_JSON))
1104-
.andExpect(request().asyncStarted());
1105-
mvcResult = mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
1106-
.andExpect(status().isOk()).andReturn();
1087+
mvcResult = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(bodyJson2).contentType(MediaType.APPLICATION_JSON), status().isOk());
11071088
assertApplicationStatusOK(mvcResult);
11081089

11091090
testNetworkModificationsCount(TEST_GROUP_ID, 3);
@@ -1112,24 +1093,12 @@ void testDuplicateModificationGroup() throws Exception {
11121093
LineSplitWithVoltageLevelInfos lineSplitWoVL = new LineSplitWithVoltageLevelInfos("line1", 10.0, null, "v4", "1.A",
11131094
"nl11", "NewLine11", "nl12", "NewLine12");
11141095
bodyJson2 = getJsonBody(lineSplitWoVL, TEST_NETWORK_ID, NetworkCreation.VARIANT_ID);
1115-
mockMvcResultActions = mockMvc.perform(
1116-
post(NETWORK_MODIFICATION_URI)
1117-
.content(bodyJson2)
1118-
.contentType(MediaType.APPLICATION_JSON))
1119-
.andExpect(request().asyncStarted());
1120-
mvcResult = mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
1121-
.andExpect(status().isOk()).andReturn();
1096+
mvcResult = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(bodyJson2).contentType(MediaType.APPLICATION_JSON), status().isOk());
11221097
assertApplicationStatusOK(mvcResult);
11231098
//create a generator
11241099
GeneratorCreationInfos generatorCreationInfos = ModificationCreation.getCreationGenerator("v2", "idGenerator1", "nameGenerator1", "1B", "v2load", "LOAD", "v1");
11251100
bodyJson2 = getJsonBody(generatorCreationInfos, TEST_NETWORK_ID, NetworkCreation.VARIANT_ID);
1126-
mockMvcResultActions = mockMvc.perform(
1127-
post(NETWORK_MODIFICATION_URI)
1128-
.content(bodyJson2)
1129-
.contentType(MediaType.APPLICATION_JSON))
1130-
.andExpect(request().asyncStarted());
1131-
mvcResult = mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
1132-
.andExpect(status().isOk()).andReturn();
1101+
mvcResult = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(bodyJson2).contentType(MediaType.APPLICATION_JSON), status().isOk());
11331102
assertApplicationStatusOK(mvcResult);
11341103
testNetworkModificationsCount(TEST_GROUP_ID, 5);
11351104

@@ -2031,19 +2000,13 @@ void testSearchModificationInfos() throws Exception {
20312000
.equipmentName(AttributeModification.toAttributeModification("newSubstationName", OperationType.SET))
20322001
.build();
20332002
String substationModificationInfosJson = getJsonBody(substationModificationInfos, TEST_NETWORK_ID, null);
2034-
ResultActions mockMvcResultActions1 = mockMvc.perform(post(NETWORK_MODIFICATION_URI).content(substationModificationInfosJson).contentType(MediaType.APPLICATION_JSON))
2035-
.andExpect(request().asyncStarted());
2036-
MvcResult mvcResult1 = mockMvc.perform(asyncDispatch(mockMvcResultActions1.andReturn()))
2037-
.andExpect(status().isOk()).andReturn();
2003+
MvcResult mvcResult1 = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(substationModificationInfosJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
20382004
assertApplicationStatusOK(mvcResult1);
20392005

20402006
// Generator Creation ID : v2
20412007
GeneratorCreationInfos generatorCreationInfos = ModificationCreation.getCreationGenerator("v2", "idGenerator1", "nameGenerator1", "1B", "v2load", "LOAD", "v1");
20422008
String generatorCreationInfosJson = getJsonBody(generatorCreationInfos, TEST_NETWORK_ID, null);
2043-
ResultActions mockMvcResultActions2 = mockMvc.perform(post(NETWORK_MODIFICATION_URI).content(generatorCreationInfosJson).contentType(MediaType.APPLICATION_JSON))
2044-
.andExpect(request().asyncStarted());
2045-
MvcResult mvcResult2 = mockMvc.perform(asyncDispatch(mockMvcResultActions2.andReturn()))
2046-
.andExpect(status().isOk()).andReturn();
2009+
MvcResult mvcResult2 = runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(generatorCreationInfosJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
20472010
assertNotNull(network.getGenerator("idGenerator1"));
20482011
assertApplicationStatusOK(mvcResult2);
20492012

@@ -2053,11 +2016,7 @@ void testSearchModificationInfos() throws Exception {
20532016
.equipmentId("v5load")
20542017
.build();
20552018
String equipmentDeletionInfosJson = getJsonBody(equipmentDeletionInfos, TEST_NETWORK_ID, null);
2056-
ResultActions mockMvcResultActions3 = mockMvc.perform(post(NETWORK_MODIFICATION_URI).content(equipmentDeletionInfosJson).contentType(MediaType.APPLICATION_JSON))
2057-
.andExpect(request().asyncStarted());
2058-
MvcResult mvcResult3 = mockMvc.perform(asyncDispatch(mockMvcResultActions3.andReturn())).andExpect(status().isOk()).andReturn();
2059-
assertApplicationStatusOK(mvcResult3);
2060-
2019+
runRequestAsync(mockMvc, post(NETWORK_MODIFICATION_URI).content(equipmentDeletionInfosJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
20612020
MvcResult mvcModificationResult;
20622021
Map<UUID, List<ModificationsSearchResult>> networkModificationsResult;
20632022
List<ModificationsSearchResult> modificationsSearchResult;

src/test/java/org/gridsuite/modification/server/modifications/GenerationDispatchTest.java

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import org.springframework.http.HttpHeaders;
2727
import org.springframework.http.MediaType;
2828
import org.springframework.test.web.servlet.MvcResult;
29-
import org.springframework.test.web.servlet.ResultActions;
3029

3130
import java.text.DecimalFormat;
3231
import java.text.DecimalFormatSymbols;
@@ -35,9 +34,7 @@
3534

3635
import static org.gridsuite.modification.server.utils.TestUtils.*;
3736
import static org.junit.jupiter.api.Assertions.*;
38-
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.asyncDispatch;
3937
import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.post;
40-
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.request;
4138
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
4239

4340
/**
@@ -171,10 +168,7 @@ void testGenerationDispatchWithMultipleEnergySource() throws Exception {
171168
setNetwork(Network.read("testGenerationDispatchWithMultipleEnergySource.xiidm", getClass().getResourceAsStream("/testGenerationDispatchWithMultipleEnergySource.xiidm")));
172169

173170
String modificationJson = getJsonBody(modification, null);
174-
ResultActions mockMvcResultActions = mockMvc.perform(post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON))
175-
.andExpect(request().asyncStarted());
176-
mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
177-
.andExpect(status().isOk());
171+
runRequestAsync(mockMvc, post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
178172

179173
assertLogMessageWithoutRank("The total demand is : 768.0 MW", "network.modification.TotalDemand", reportService);
180174
assertLogMessageWithoutRank("The total amount of fixed supply is : 0.0 MW", "network.modification.TotalAmountFixedSupply", reportService);
@@ -496,10 +490,7 @@ void testGenerationDispatchWithSubstationsHierarchy() throws Exception {
496490
setNetwork(Network.read("ieee118cdf_testDemGroupe.xiidm", getClass().getResourceAsStream("/ieee118cdf_testDemGroupe.xiidm")));
497491

498492
String modificationJson = getJsonBody(modification, null);
499-
ResultActions mockMvcResultActions = mockMvc.perform(post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON))
500-
.andExpect(request().asyncStarted());
501-
mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
502-
.andExpect(status().isOk());
493+
runRequestAsync(mockMvc, post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
503494

504495
// generators modified
505496
assertEquals(264, getNetwork().getGenerator("B4-G").getTargetP(), 0.001);
@@ -606,10 +597,7 @@ void testGenerationDispatchWithMaxValueLessThanMinP() throws Exception {
606597
.withHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE))).getId();
607598

608599
String modificationJson = getJsonBody(modification, null);
609-
ResultActions mockMvcResultActions = mockMvc.perform(post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON))
610-
.andExpect(request().asyncStarted());
611-
MvcResult mvcResult = mockMvc.perform(asyncDispatch(mockMvcResultActions.andReturn()))
612-
.andExpect(status().isOk()).andReturn();
600+
MvcResult mvcResult = runRequestAsync(mockMvc, post(getNetworkModificationUri()).content(modificationJson).contentType(MediaType.APPLICATION_JSON), status().isOk());
613601
NetworkModificationsResult networkModificationsResult = mapper.readValue(mvcResult.getResponse().getContentAsString(), new TypeReference<>() { });
614602
assertEquals(1, extractApplicationStatus(networkModificationsResult).size());
615603
assertEquals(NetworkModificationResult.ApplicationStatus.WITH_WARNINGS, extractApplicationStatus(networkModificationsResult).getFirst());

0 commit comments

Comments
 (0)