コード例 #1
0
    def setup(self):
        self.root = RootTask(should_stop=Event(), should_pause=Event())
        self.task = ApplyMagFieldTask(name='Test',
                                      parallel={'activated': False})
        self.root.add_child_task(0, self.task)

        self.root.run_time[DRIVERS] = {'Test': (InstrHelper,
                                                InstrHelperStarter())}
        self.root.run_time[PROFILES] =\
            {'Test1': {'connections': {'C': {'owner': []}},
                       'settings': {'S': {'make_ready': [None],
                                          'go_to_field': [None],
                                          'check_connection': [True]}}
                       }
             }

        # This is set simply to make sure the test of InstrTask pass.
        self.task.selected_instrument = ('Test1', 'Test', 'C', 'S')
コード例 #2
0
class TestApplyMagFieldTask(object):

    def setup(self):
        self.root = RootTask(should_stop=Event(), should_pause=Event())
        self.task = ApplyMagFieldTask(name='Test',
                                      parallel={'activated': False})
        self.root.add_child_task(0, self.task)

        self.root.run_time[DRIVERS] = {'Test': (InstrHelper,
                                                InstrHelperStarter())}
        self.root.run_time[PROFILES] =\
            {'Test1': {'connections': {'C': {'owner': []}},
                       'settings': {'S': {'make_ready': [None],
                                          'go_to_field': [None],
                                          'check_connection': [True]}}
                       }
             }

        # This is set simply to make sure the test of InstrTask pass.
        self.task.selected_instrument = ('Test1', 'Test', 'C', 'S')

    def test_check1(self):
        """Simply test that everything is ok if field can be evaluated.

        """
        self.task.field = '3.0'

        test, traceback = self.task.check(test_instr=True)
        assert test
        assert not traceback

        assert self.task.get_from_database('Test_field') == 3.0

    def test_check2(self):
        """Check handling a wrong field.

        """
        self.task.field = '*1.0*'

        test, traceback = self.task.check(test_instr=True)
        assert not test
        assert len(traceback) == 1
        assert 'root/Test-field'in traceback

        assert self.task.get_from_database('Test_field') == 0.01

    def test_perform1(self):
        """Simple test when everything is right.

        """
        self.task.field = '2.0'

        self.root.prepare()
        self.task.perform()
        assert self.root.get_from_database('Test_field') == 2.0

    def test_perform2(self):
        """Test multiple run when connection is maintained.

        """
        self.task.field = '2.0'

        self.root.prepare()
        self.task.perform()
        self.task.perform()
        # In case of fail make_ready would be called twice.
        assert self.root.get_from_database('Test_field') == 2.0