diff --git a/src/main/java/org/gridsuite/modification/modifications/byfilter/AbstractModificationByAssignment.java b/src/main/java/org/gridsuite/modification/modifications/byfilter/AbstractModificationByAssignment.java index 3d4013cb..dcc9d567 100644 --- a/src/main/java/org/gridsuite/modification/modifications/byfilter/AbstractModificationByAssignment.java +++ b/src/main/java/org/gridsuite/modification/modifications/byfilter/AbstractModificationByAssignment.java @@ -56,8 +56,7 @@ public abstract class AbstractModificationByAssignment extends AbstractModificat public static final String VALUE_KEY_ARROW_NAME = "arrow"; public static final String VALUE_KEY_ARROW_VALUE = "→"; public static final String REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_ZERO = "network.modification.equipmentModifiedError.zero"; - public static final String REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_EMPTY = "network.modification.equipmentModifiedError.empty"; - public static final String REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_NAN = "network.modification.equipmentModifiedError.nan"; + public static final String REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_MISSING = "network.modification.equipmentModifiedError.missing"; public static final String REPORT_KEY_BY_FILTER_MODIFICATION_SOME = "network.modification.byFilterModificationSome"; public static final String REPORT_KEY_BY_FILTER_MODIFICATION_FAILED = "network.modification.byFilterModificationFailed"; public static final String REPORT_KEY_BY_FILTER_MODIFICATION_SUCCESS = "network.modification.byFilterModificationSuccess"; diff --git a/src/main/java/org/gridsuite/modification/modifications/byfilter/ByFormulaModification.java b/src/main/java/org/gridsuite/modification/modifications/byfilter/ByFormulaModification.java index 57ed5b5b..1a054a60 100644 --- a/src/main/java/org/gridsuite/modification/modifications/byfilter/ByFormulaModification.java +++ b/src/main/java/org/gridsuite/modification/modifications/byfilter/ByFormulaModification.java @@ -68,12 +68,9 @@ protected boolean preCheckValue(Identifiable equipment, AbstractAssignmentInf FormulaInfos formulaInfos = (FormulaInfos) abstractAssignmentInfos; Double value1 = formulaInfos.getFieldOrValue1().getRefOrValue(equipment); Double value2 = formulaInfos.getFieldOrValue2().getRefOrValue(equipment); - if (value1 == null || value2 == null) { - return reportErrorOnEquipment(equipment, notEditableEquipments, REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_EMPTY, reports); - } - + // value 1 and value 2 cannot be null because getRefOrValue returns NaN if value is null if (Double.isNaN(value1) || Double.isNaN(value2)) { - return reportErrorOnEquipment(equipment, notEditableEquipments, REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_NAN, reports); + return reportErrorOnEquipment(equipment, notEditableEquipments, REPORT_KEY_EQUIPMENT_MODIFIED_ERROR_MISSING, reports); } if (value2 == 0 && formulaInfos.getOperator() == Operator.DIVISION) { @@ -89,7 +86,7 @@ private boolean reportErrorOnEquipment(Identifiable equipment, List n .withResourceBundles(NetworkModificationReportResourceBundle.BASE_NAME) .withMessageTemplate(reportKey) .withUntypedValue(VALUE_KEY_EQUIPMENT_NAME, equipment.getId()) - .withSeverity(TypedValue.DETAIL_SEVERITY) + .withSeverity(TypedValue.WARN_SEVERITY) .build()); return false; } diff --git a/src/main/resources/org/gridsuite/modification/reports.properties b/src/main/resources/org/gridsuite/modification/reports.properties index 845a8db5..fce38641 100644 --- a/src/main/resources/org/gridsuite/modification/reports.properties +++ b/src/main/resources/org/gridsuite/modification/reports.properties @@ -145,8 +145,7 @@ network.modification.equipmentDeletion = Equipment deletion ${equipmentId} network.modification.equipmentDisconnect = Equipment with id=${id} disconnected network.modification.equipmentDisconnect.side = Equipment with id=${id} disconnected on side ${side} network.modification.equipmentDisconnected = Equipment with id=${id} disconnected -network.modification.equipmentModifiedError.empty = Cannot modify equipment ${equipmentName} : At least one of the value or referenced field is empty -network.modification.equipmentModifiedError.nan = Cannot modify equipment ${equipmentName} : At least one of the value or referenced field is not a number +network.modification.equipmentModifiedError.missing = Cannot modify equipment ${equipmentName} : At least one of the value or referenced field is missing network.modification.equipmentModifiedError.zero = Cannot modify equipment ${equipmentName} : The value or referenced field of the second operand in the division operator is zero network.modification.equipmentModifiedReport = ${equipmentType} id : ${equipmentName}, ${fieldName} : ${oldValue} ${arrow} ${newValue} network.modification.equipmentModifiedReportException = Cannot modify equipment ${equipmentName} : ${errorMessage} diff --git a/src/test/java/org/gridsuite/modification/modifications/byfilter/formula/VoltageLevelByFormulaModificationTest.java b/src/test/java/org/gridsuite/modification/modifications/byfilter/formula/VoltageLevelByFormulaModificationTest.java index a69c7bee..6dbeb0d9 100644 --- a/src/test/java/org/gridsuite/modification/modifications/byfilter/formula/VoltageLevelByFormulaModificationTest.java +++ b/src/test/java/org/gridsuite/modification/modifications/byfilter/formula/VoltageLevelByFormulaModificationTest.java @@ -252,7 +252,7 @@ protected void assertAfterNetworkModificationApplication() { // check logs List allLogs = reportNode.getChildren().getFirst().getChildren().stream().flatMap(child -> child.getChildren().stream().map(ReportNode::getMessage)).toList(); - assertTrue(allLogs.contains("Cannot modify equipment v7 : At least one of the value or referenced field is not a number")); + assertTrue(allLogs.contains("Cannot modify equipment v7 : At least one of the value or referenced field is missing")); assertTrue(allLogs.contains("Cannot modify equipment v8 : The value or referenced field of the second operand in the division operator is zero")); }