Skip to content
Snippets Groups Projects
Commit 48af5d56 authored by Conor Finn's avatar Conor Finn
Browse files

RE #27012 Use dictionary for instrument override.

Also refactors the tests to focus on one path of execution per test.
parent 8565f4a8
No related branches found
No related tags found
No related merge requests found
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
# pylint: disable=invalid-name # pylint: disable=invalid-name
from __future__ import (absolute_import, division, print_function) from __future__ import (absolute_import, division, print_function)
from Engineering.gui.engineering_diffraction.tabs.common import INSTRUMENT_DICT
from mantidqt.utils.asynchronous import AsyncTask from mantidqt.utils.asynchronous import AsyncTask
from mantid.simpleapi import logger from mantid.simpleapi import logger
from mantidqt.utils.observer_pattern import Observable from mantidqt.utils.observer_pattern import Observable
...@@ -69,12 +70,7 @@ class CalibrationPresenter(object): ...@@ -69,12 +70,7 @@ class CalibrationPresenter(object):
self.emit_enable_button_signal() self.emit_enable_button_signal()
def set_instrument_override(self, instrument): def set_instrument_override(self, instrument):
if instrument == 0: instrument = INSTRUMENT_DICT[instrument]
instrument = "ENGINX"
elif instrument == 1:
instrument = "IMAT"
else:
raise ValueError("Invalid instrument index")
self.view.set_instrument_override(instrument) self.view.set_instrument_override(instrument)
self.instrument = instrument self.instrument = instrument
......
...@@ -61,11 +61,6 @@ class CalibrationPresenterTest(unittest.TestCase): ...@@ -61,11 +61,6 @@ class CalibrationPresenterTest(unittest.TestCase):
self.view.set_check_plot_output_enabled.assert_called_with(False) self.view.set_check_plot_output_enabled.assert_called_with(False)
def test_controls_enabled_enables_both(self): def test_controls_enabled_enables_both(self):
self.presenter.set_calibrate_controls_enabled(False)
self.view.set_calibrate_button_enabled.assert_called_with(False)
self.view.set_check_plot_output_enabled.assert_called_with(False)
self.presenter.set_calibrate_controls_enabled(True) self.presenter.set_calibrate_controls_enabled(True)
self.view.set_calibrate_button_enabled.assert_called_with(True) self.view.set_calibrate_button_enabled.assert_called_with(True)
......
"""
Holds some common constants across all tabs.
"""
# Dictionary of indexes for instruments.
INSTRUMENT_DICT = {0: "ENGINX", 1: "IMAT"}
...@@ -9,6 +9,7 @@ from __future__ import (absolute_import, division, print_function) ...@@ -9,6 +9,7 @@ from __future__ import (absolute_import, division, print_function)
from qtpy.QtWidgets import QMessageBox from qtpy.QtWidgets import QMessageBox
from Engineering.gui.engineering_diffraction.tabs.common import INSTRUMENT_DICT
from mantidqt.utils.asynchronous import AsyncTask from mantidqt.utils.asynchronous import AsyncTask
from mantidqt.utils.observer_pattern import Observer from mantidqt.utils.observer_pattern import Observer
from mantid.simpleapi import logger from mantid.simpleapi import logger
...@@ -54,12 +55,7 @@ class FocusPresenter(object): ...@@ -54,12 +55,7 @@ class FocusPresenter(object):
self.worker.start() self.worker.start()
def set_instrument_override(self, instrument): def set_instrument_override(self, instrument):
if instrument == 0: instrument = INSTRUMENT_DICT[instrument]
instrument = "ENGINX"
elif instrument == 1:
instrument = "IMAT"
else:
raise ValueError("Invalid instrument index")
self.view.set_instrument_override(instrument) self.view.set_instrument_override(instrument)
self.instrument = instrument self.instrument = instrument
......
...@@ -67,22 +67,25 @@ class FocusPresenterTest(unittest.TestCase): ...@@ -67,22 +67,25 @@ class FocusPresenterTest(unittest.TestCase):
logger.assert_called_with(str(fail_info)) logger.assert_called_with(str(fail_info))
self.assertEqual(emit.call_count, 1) self.assertEqual(emit.call_count, 1)
def test_get_banks(self): def test_get_both_banks(self):
self.view.get_north_bank.return_value = True self.view.get_north_bank.return_value = True
self.view.get_south_bank.return_value = True self.view.get_south_bank.return_value = True
self.assertEqual(["North", "South"], self.presenter._get_banks()) self.assertEqual(["North", "South"], self.presenter._get_banks())
def test_get_north_bank(self):
self.view.get_north_bank.return_value = True self.view.get_north_bank.return_value = True
self.view.get_south_bank.return_value = False self.view.get_south_bank.return_value = False
self.assertEqual(["North"], self.presenter._get_banks()) self.assertEqual(["North"], self.presenter._get_banks())
def test_get_south_bank(self):
self.view.get_north_bank.return_value = False self.view.get_north_bank.return_value = False
self.view.get_south_bank.return_value = True self.view.get_south_bank.return_value = True
self.assertEqual(["South"], self.presenter._get_banks()) self.assertEqual(["South"], self.presenter._get_banks())
def test_getting_no_banks(self):
self.view.get_north_bank.return_value = False self.view.get_north_bank.return_value = False
self.view.get_south_bank.return_value = False self.view.get_south_bank.return_value = False
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment