From 37dc38fd4d2c27d450287fa49d9b0915987f5dc6 Mon Sep 17 00:00:00 2001 From: Aleksander Mats Karlsson Date: Wed, 25 Mar 2026 10:09:06 +0100 Subject: [PATCH 1/2] chore: improve punctuation and spacing of errors --- .../yaml/mappers/consumer_function_mapper.py | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py b/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py index 26d9740f98..e6ad17366f 100644 --- a/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py +++ b/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py @@ -285,7 +285,7 @@ def _get_resource(self, resource_name: str, reference: str) -> Resource: raise ModelValidationException( errors=[ self._create_error( - message=f"Unable to find resource '{resource_name}'", reference=reference, key="FILE" + message=f"Unable to find resource '{resource_name}'.", reference=reference, key="FILE" ) ] ) @@ -428,7 +428,7 @@ def _create_variable_speed_compressor_train( ) pressure_control = _pressure_control_mapper(model) if fluid_model is None: - raise DomainValidationException("Fluid model is required for compressor train") + raise DomainValidationException("Fluid model is required for compressor train.") compressor_model = CompressorTrainCommonShaft( stages=stages, @@ -476,13 +476,13 @@ def _create_single_speed_compressor_train( maximum_discharge_pressure = model.maximum_discharge_pressure if maximum_discharge_pressure and pressure_control != FixedSpeedPressureControl.DOWNSTREAM_CHOKE: raise DomainValidationException( - f"Setting maximum discharge pressure for single speed compressor train is currently" - f"only supported with {FixedSpeedPressureControl.DOWNSTREAM_CHOKE} pressure control" - f"option. Pressure control option is {pressure_control}" + f"Setting maximum discharge pressure for single speed compressor train is currently " + f"only supported with {FixedSpeedPressureControl.DOWNSTREAM_CHOKE} pressure control option. " + f"Pressure control option is {pressure_control}." ) if fluid_model is None: - raise DomainValidationException("Fluid model is required for compressor train") + raise DomainValidationException("Fluid model is required for compressor train.") compressor_model = CompressorTrainCommonShaft( stages=stages, @@ -556,7 +556,7 @@ def _create_simplified_model_with_prepared_stages( # For unknown stages, maximum_pressure_ratio_per_stage is required to determine stage count if train_spec.maximum_pressure_ratio_per_stage is None: raise DomainValidationException( - "MAXIMUM_PRESSURE_RATIO_PER_STAGE is required for unknown compressor stages" + "MAXIMUM_PRESSURE_RATIO_PER_STAGE is required for unknown compressor stages." ) suction_pressure = operational_data.suction_pressures @@ -762,7 +762,7 @@ def _create_variable_speed_compressor_train_multiple_streams_and_pressures( ] if not any(fluid_models): - raise DomainValidationException("An inlet stream is required for this model") + raise DomainValidationException("An inlet stream is required for this model.") interstage_pressures = {i for i, stage in enumerate(stages) if stage.has_control_pressure} stage_number_interstage_pressure = interstage_pressures.pop() if interstage_pressures else None @@ -875,7 +875,7 @@ def _get_resource(self, resource_name: str, reference: str) -> Resource: raise ModelValidationException( errors=[ self._create_error( - message=f"Unable to find resource '{resource_name}'", reference=reference, key="FILE" + message=f"Unable to find resource '{resource_name}'.", reference=reference, key="FILE" ) ] ) @@ -928,7 +928,7 @@ def _get_resource(self, resource_name: str, reference: str) -> Resource: raise ModelValidationException( errors=[ self._create_error( - message=f"Unable to find resource '{resource_name}'", reference=reference, key="FILE" + message=f"Unable to find resource '{resource_name}'.", reference=reference, key="FILE" ) ] ) From 643a4937e764d7d09abaead9d40213d77b375c29 Mon Sep 17 00:00:00 2001 From: Aleksander Mats Karlsson Date: Wed, 25 Mar 2026 10:26:02 +0100 Subject: [PATCH 2/2] chore: use the str values of keywords for errmsg --- .../presentation/yaml/mappers/consumer_function_mapper.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py b/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py index e6ad17366f..c1ee1f16c2 100644 --- a/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py +++ b/src/libecalc/presentation/yaml/mappers/consumer_function_mapper.py @@ -476,9 +476,9 @@ def _create_single_speed_compressor_train( maximum_discharge_pressure = model.maximum_discharge_pressure if maximum_discharge_pressure and pressure_control != FixedSpeedPressureControl.DOWNSTREAM_CHOKE: raise DomainValidationException( - f"Setting maximum discharge pressure for single speed compressor train is currently " - f"only supported with {FixedSpeedPressureControl.DOWNSTREAM_CHOKE} pressure control option. " - f"Pressure control option is {pressure_control}." + f"Setting {EcalcYamlKeywords.maximum_discharge_pressure} for single speed compressor train is currently " + f"only supported with {FixedSpeedPressureControl.DOWNSTREAM_CHOKE.value} pressure control option. " + f"Pressure control option is {pressure_control.value}." ) if fluid_model is None: