コード例 #1
0
    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)
コード例 #2
0
    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)
コード例 #3
0
    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)