Skip to content

Commit 56502ad

Browse files
ayolabetiennehomer
andauthored
Fix currentLimits modification bugs (#279)
Signed-off-by: Ayoub LABIDI <[email protected]> Co-authored-by: Etienne Homer <[email protected]>
1 parent 87c6767 commit 56502ad

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

src/main/java/org/gridsuite/modification/server/modifications/AbstractBranchModification.java

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,14 @@ protected void modifyBranch(Branch<?> branch, BranchModificationInfos branchModi
5656
CurrentLimitsModificationInfos currentLimitsInfos2 = modificationInfos.getCurrentLimits2();
5757
List<Report> side1LimitsReports = new ArrayList<>();
5858
CurrentLimits currentLimits1 = branch.getCurrentLimits1().orElse(null);
59-
modifyCurrentLimits(currentLimitsInfos1, branch.newCurrentLimits1(), currentLimits1, side1LimitsReports);
59+
if (currentLimitsInfos1 != null) {
60+
modifyCurrentLimits(currentLimitsInfos1, branch.newCurrentLimits1(), currentLimits1, side1LimitsReports);
61+
}
6062
List<Report> side2LimitsReports = new ArrayList<>();
6163
CurrentLimits currentLimits2 = branch.getCurrentLimits2().orElse(null);
62-
modifyCurrentLimits(currentLimitsInfos2, branch.newCurrentLimits2(), currentLimits2, side2LimitsReports);
63-
64+
if (currentLimitsInfos2 != null) {
65+
modifyCurrentLimits(currentLimitsInfos2, branch.newCurrentLimits2(), currentLimits2, side2LimitsReports);
66+
}
6467
if (!side1LimitsReports.isEmpty() || !side2LimitsReports.isEmpty()) {
6568
Reporter limitsReporter = subReporter.createSubReporter("limits", "Limits");
6669
limitsReporter.report(Report.builder()

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

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,5 +316,20 @@ public void testTemporaryLimitsModification() throws Exception {
316316
LineModificationInfos createdModification = (LineModificationInfos) modificationRepository.getModifications(getGroupId(), false, true).get(0);
317317

318318
assertThat(createdModification).recursivelyEquals(lineModificationInfos);
319+
320+
// Modify name and no modification on temporary limits
321+
line.setName(null);
322+
LineModificationInfos lineModificationInfos1 = LineModificationInfos.builder()
323+
.equipmentId("line1")
324+
.equipmentName(new AttributeModification<>("ModifiedName", OperationType.SET))
325+
.build();
326+
modificationToCreateJson = mapper.writeValueAsString(lineModificationInfos1);
327+
328+
mockMvc.perform(post(getNetworkModificationUri()).content(modificationToCreateJson).contentType(MediaType.APPLICATION_JSON))
329+
.andExpect(status().isOk()).andReturn();
330+
331+
createdModification = (LineModificationInfos) modificationRepository.getModifications(getGroupId(), false, true).get(1);
332+
333+
assertThat(createdModification).recursivelyEquals(lineModificationInfos1);
319334
}
320335
}

0 commit comments

Comments
 (0)