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, ())
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)
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)
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
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
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)
def immediateStop(self): self.log.warning('stopping all devices for immediate stop') from nicos.commands.device import stop stop()