From b756ebabc1b4fbdd118f444ba7a17bc42272f974 Mon Sep 17 00:00:00 2001 From: Feda Curic Date: Mon, 25 Sep 2023 14:24:53 +0200 Subject: [PATCH] Test that measured data work with failed reals This caused the misfit preprocessor to fail when run on cases that have failed realizations. --- src/ert/data/_measured_data.py | 7 ++++--- tests/unit_tests/gui/test_full_manual_update_workflow.py | 4 ++++ 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/src/ert/data/_measured_data.py b/src/ert/data/_measured_data.py index f8275554b29..41afbbf1397 100644 --- a/src/ert/data/_measured_data.py +++ b/src/ert/data/_measured_data.py @@ -107,10 +107,11 @@ def _get_data( response = ensemble.load_response( group, tuple(ensemble.realization_list(RealizationState.HAS_DATA)) ) + _msg = f"No response loaded for observation key: {key}" + if not response: + raise ResponseError(_msg) except KeyError as e: - raise ResponseError( - f"No response loaded for observation key: {key}" - ) from e + raise ResponseError(_msg) from e ds = obs.merge( response, join="left", diff --git a/tests/unit_tests/gui/test_full_manual_update_workflow.py b/tests/unit_tests/gui/test_full_manual_update_workflow.py index d764c49bd22..995519d9210 100644 --- a/tests/unit_tests/gui/test_full_manual_update_workflow.py +++ b/tests/unit_tests/gui/test_full_manual_update_workflow.py @@ -4,6 +4,7 @@ from qtpy.QtCore import Qt, QTimer from qtpy.QtWidgets import QApplication, QComboBox, QMessageBox, QPushButton, QWidget +from ert.data import MeasuredData from ert.gui.ertwidgets.caselist import CaseList from ert.gui.simulation.ensemble_experiment_panel import EnsembleExperimentPanel from ert.gui.simulation.run_dialog import RunDialog @@ -127,6 +128,9 @@ def handle_dialog(): df_prior = facade.load_all_gen_kw_data(storage.get_ensemble_by_name("iter-0")) df_posterior = facade.load_all_gen_kw_data(storage.get_ensemble_by_name("iter-1")) + # Making sure measured data works with failed realizations + MeasuredData(facade, storage.get_ensemble_by_name("iter-0"), ["POLY_OBS"]) + # We expect that ERT's update step lowers the # generalized variance for the parameters. assert (