Esempio n. 1
0
 def test_fix_and_release(self, session, log):
     """Check fix() and release() commands."""
     motor = session.getDevice('motor')
     move(motor, 0)
     fix(motor)
     move(motor, 10)
     stop(motor)
     release(motor)
     assert motor.curvalue == 0
     assert raises(UsageError, release)
     assert raises(UsageError, release, ())
     assert raises(UsageError, unfix, ())
Esempio n. 2
0
def set_flipper_off():
    """Shut down flippers.

    After shutting down the neutrons are guided through instrument for
    image mode (MIEZE)
    """
    ps = ['sf_0a', 'sf_0b', 'cbox_0a_fg_amp', 'cbox_0b_fg_amp']
    reg = ['cbox_0a_reg_amp', 'cbox_0b_reg_amp']
    for powersupply in ps:
        powersupply = session.getDevice(powersupply)
        move(powersupply, 0.01)
    for regulator in reg:
        regulator = session.getDevice(regulator)
        stop(regulator)
Esempio n. 3
0
def zero():
    """Shut down all (static) power supplies."""
    ps = [
        'hrf_0a', 'hrf_0b', 'hrf_1a', 'hrf_1b', 'hsf_0a', 'hsf_0b', 'hsf_1',
        'sf_0a', 'sf_0b', 'sf_1', 'gf1', 'gf2', 'gf4', 'gf5', 'gf6', 'gf7',
        'gf8', 'gf9', 'gf10', 'nse0', 'nse1'
    ]
    for powersupply in ps:
        powersupply = session.getDevice(powersupply)
        move(powersupply, 0.001)
    wait()

    # Stop regulation and turn fg_amp off
    stop('cbox_0a_reg_amp', 'cbox_0b_reg_amp', 'cbox_1_reg_amp')
    maw('cbox_0a_fg_amp', 0.001, 'cbox_0b_fg_amp', 0.001, 'cbox_1_fg_amp',
        0.001)
Esempio n. 4
0
 def test_stop_privileged(self, session, log):
     # Change the user level to lower access rights to check that the stop
     # on higher level requesting devices will be ignored
     AddSetup('device')
     motor = session.getDevice('motor')
     pdev = session.getDevice('privdev')
     speed = pdev.speed
     pdev.speed = motor.speed = 0.1
     move(pdev, 10, motor, 10)
     with session.withUserLevel(GUEST):
         assert pdev.status(0)[0] == devstatus.BUSY
         assert motor.status(0)[0] == devstatus.BUSY
         assert raises(AccessError, pdev.stop)
         stop(pdev, motor)
         wait(motor)
         assert motor.status(0)[0] == devstatus.OK
         assert pdev.status(0)[0] == devstatus.BUSY
     stop(pdev)
     wait(pdev)
     assert pdev.status(0)[0] == devstatus.OK
     pdev.speed = motor.speed = speed
Esempio n. 5
0
    def test_read(self, session, log):
        """Check read() command."""
        motor = session.getDevice('motor')
        coder = session.getDevice('coder')
        exp = session.getDevice('Exp')
        tdev = session.getDevice('tdev')
        tdev._status_exception = NicosError('expected failed status')
        tdev._read_exception = NicosError('expected failed read')

        read()
        read(motor, coder)
        with log.assert_errors(r'expected failed read'):
            read(tdev)
        assert raises(UsageError, read, exp)
        # ensure that target != position to generate a read message containing
        # a 'target' entry
        s = motor.speed
        motor.speed = 0.1
        move(motor, 1)
        stop(motor)
        with log.assert_msg_matches(r'target'):
            read(motor)
        motor.speed = s
Esempio n. 6
0
    def test_stop(self, session, log):
        """Check stop() command."""
        motor = session.getDevice('motor')
        tdev = session.getDevice('tdev')
        tdev._stop_exception = NicosError('expected failed stop')

        stop()
        with log.assert_warns('expected failed stop'):
            stop(motor, tdev)
        # check stop moving motor
        move(motor, 10)
        stop(motor)
Esempio n. 7
0
 def immediateStop(self):
     self.log.warning('stopping all devices for immediate stop')
     from nicos.commands.device import stop
     stop()