def test_moving_only_monitor_5(self): component = None is_transmission_workspace = None mon_4_dist = 0.0 mon_5_dist = 80.0 state = self.get_state_obj(monitor_4_dist=mon_4_dist, monitor_5_dist=mon_5_dist) zoom_class = SANSMoveZOOM(state=state) workspace = self.get_zoom_workspace() coordinates = get_coordinates() inst_info = state.instrument_info z_pos_mon_4_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, inst_info=inst_info) z_pos_mon_5_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, inst_info=inst_info) self.assertTrue(isinstance(z_pos_mon_4_before, float)) self.assertTrue(isinstance(z_pos_mon_5_before, float)) zoom_class.move_initial(workspace=workspace, coordinates=coordinates, component=component, is_transmission_workspace=is_transmission_workspace) z_pos_mon_4_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, inst_info=inst_info) z_pos_mon_5_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, inst_info=inst_info) self.assertAlmostEqual(z_pos_mon_4_before, z_pos_mon_4_after) self.assertAlmostEqual(calculate_new_pos_rel_to_rear(ws=workspace, offset=mon_5_dist, inst_info=inst_info), z_pos_mon_5_after)
def test_move_both_zoom_monitors(self): # Unused for unit test component = None is_transmission_workspace = None mon_4_dist = 40.0 mon_5_dist = 20.0 state = self.get_state_obj(monitor_4_dist=mon_4_dist, monitor_5_dist=mon_5_dist) zoom_class = SANSMoveZOOM(state=state) workspace = self.get_zoom_workspace() coordinates = get_coordinates() inst_info = state.instrument_info z_pos_mon_4_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, inst_info=inst_info) z_pos_mon_5_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, inst_info=inst_info) self.assertTrue(isinstance(z_pos_mon_4_before, float)) self.assertTrue(isinstance(z_pos_mon_5_before, float)) zoom_class.move_initial(workspace=workspace, coordinates=coordinates, component=component, is_transmission_workspace=is_transmission_workspace) # Monitor 4 shifts relative to itself rather than the rear detector on ZOOM z_pos_mon_4_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, inst_info=inst_info) z_pos_mon_5_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, inst_info=inst_info) self.assertAlmostEqual(z_pos_mon_4_before + mon_4_dist, z_pos_mon_4_after) self.assertAlmostEqual(calculate_new_pos_rel_to_rear(ws=workspace, offset=mon_5_dist, inst_info=inst_info), z_pos_mon_5_after)
def test_moving_only_monitor_4(self): zoom_class = SANSMoveZOOM() component = None is_transmission_workspace = None mon_4_dist = 40.0 mon_5_dist = 0.0 move_info = self.get_state_move_obj(monitor_4_dist=mon_4_dist, monitor_5_dist=mon_5_dist) workspace = self.get_zoom_workspace() coordinates = get_coordinates() z_pos_mon_4_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, move_info=move_info) z_pos_mon_5_before = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, move_info=move_info) self.assertTrue(isinstance(z_pos_mon_4_before, float)) self.assertTrue(isinstance(z_pos_mon_5_before, float)) zoom_class.move_initial( move_info=move_info, workspace=workspace, coordinates=coordinates, component=component, is_transmission_workspace=is_transmission_workspace) # Monitor 4 shifts relative to itself rather than the rear detector on ZOOM z_pos_mon_4_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=4, move_info=move_info) z_pos_mon_5_after = get_monitor_pos(ws=workspace, monitor_spectrum_no=5, move_info=move_info) self.assertAlmostEqual(z_pos_mon_4_before + mon_4_dist, z_pos_mon_4_after) self.assertAlmostEqual(z_pos_mon_5_before, z_pos_mon_5_after)