From 5e9cfcd68a3bcee6a72149c8cdda7155d78ba553 Mon Sep 17 00:00:00 2001 From: Conor Finn <conor.finn@stfc.ac.uk> Date: Thu, 23 Jan 2020 15:38:17 +0000 Subject: [PATCH] RE #27659 Make full calib integrate with model --- .../gui/engineering_diffraction/settings/settings_view.py | 3 --- .../gui/engineering_diffraction/tabs/calibration/model.py | 4 ++-- .../tabs/calibration/test/test_calib_model.py | 6 ++++-- .../engineering_diffraction/tabs/common/path_handling.py | 4 ++-- 4 files changed, 8 insertions(+), 9 deletions(-) diff --git a/scripts/Engineering/gui/engineering_diffraction/settings/settings_view.py b/scripts/Engineering/gui/engineering_diffraction/settings/settings_view.py index 3d94d776b52..834e4cca0fc 100644 --- a/scripts/Engineering/gui/engineering_diffraction/settings/settings_view.py +++ b/scripts/Engineering/gui/engineering_diffraction/settings/settings_view.py @@ -25,9 +25,6 @@ class SettingsView(QtWidgets.QDialog, Ui_settings): self.finder_fullCalib.setLabelText("Full Calibration") self.finder_fullCalib.isForRunFiles(False) - # TODO: Once it becomes possible to load the .csv containing the full calibration into mantid, - # this can be used. Until then, this option is hidden from the user. - self.finder_fullCalib.hide() # =============== # Slot Connectors diff --git a/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/model.py b/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/model.py index fd3ee96f23b..929639cbfd3 100644 --- a/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/model.py +++ b/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/model.py @@ -14,7 +14,7 @@ import matplotlib.pyplot as plt from mantid.api import AnalysisDataService as Ads from mantid.kernel import logger from mantid.simpleapi import EnggCalibrate, DeleteWorkspace, CloneWorkspace, \ - CreateWorkspace, AppendSpectra, CreateEmptyTableWorkspace + CreateWorkspace, AppendSpectra, CreateEmptyTableWorkspace, LoadAscii from mantidqt.plotting.functions import plot from Engineering.EnggUtils import write_ENGINX_GSAS_iparam_file from Engineering.gui.engineering_diffraction.tabs.common import vanadium_corrections @@ -55,7 +55,7 @@ class CalibrationModel(object): full_calib_path = get_setting(path_handling.INTERFACES_SETTINGS_GROUP, path_handling.ENGINEERING_PREFIX, "full_calibration") if full_calib_path is not None and path.exists(full_calib_path): - full_calib = path_handling.load_workspace(full_calib_path) + full_calib = LoadAscii(full_calib_path, OutputWorkspace="det_pos", Separator="Tab") output = self.run_calibration(sample_workspace, van_integration, van_curves, diff --git a/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/test/test_calib_model.py b/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/test/test_calib_model.py index 87fc73d965c..d82d2152b93 100644 --- a/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/test/test_calib_model.py +++ b/scripts/Engineering/gui/engineering_diffraction/tabs/calibration/test/test_calib_model.py @@ -58,22 +58,24 @@ class CalibrationModelTest(unittest.TestCase): @patch(file_path + '.get_setting') @patch(class_path + '.update_calibration_params_table') @patch(class_path + '.create_output_files') + @patch(file_path + '.LoadAscii') @patch(file_path + ".path_handling.load_workspace") @patch(class_path + '.run_calibration') @patch(file_path + '.vanadium_corrections.fetch_correction_workspaces') - def test_having_full_calib_set_uses_file(self, van_corr, calibrate_alg, load_workspace, + def test_having_full_calib_set_uses_file(self, van_corr, calibrate_alg, load_workspace, load_ascii, output_files, update_table, setting, path): path.return_value = True setting.return_value = "mocked/out/path" van_corr.return_value = ("mocked_integration", "mocked_curves") load_workspace.return_value = "mocked_workspace" + load_ascii.return_value = "mocked_det_pos" self.model.create_new_calibration(VANADIUM_NUMBER, CERIUM_NUMBER, False, "ENGINX") calibrate_alg.assert_called_with("mocked_workspace", "mocked_integration", "mocked_curves", None, None, - full_calib_ws="mocked_workspace") + full_calib_ws="mocked_det_pos") @patch(class_path + '.update_calibration_params_table') @patch(class_path + '.create_output_files') diff --git a/scripts/Engineering/gui/engineering_diffraction/tabs/common/path_handling.py b/scripts/Engineering/gui/engineering_diffraction/tabs/common/path_handling.py index ca37e6d9d6e..b90d770bfdb 100644 --- a/scripts/Engineering/gui/engineering_diffraction/tabs/common/path_handling.py +++ b/scripts/Engineering/gui/engineering_diffraction/tabs/common/path_handling.py @@ -25,9 +25,9 @@ def get_output_path(): return location if location is not None else "" -def load_workspace(file_path): +def load_workspace(file_path, **kwargs): try: - return Load(Filename=file_path, OutputWorkspace="engggui_calibration_sample_ws") + return Load(Filename=file_path, OutputWorkspace="engggui_calibration_sample_ws", **kwargs) except Exception as e: logger.error("Error while loading workspace. " "Could not run the algorithm Load successfully for the data file " -- GitLab