Files
motorDriverTests/tests/turboPmac1/ax5/test_common.py
2025-12-05 15:44:46 +01:00

101 lines
2.0 KiB
Python
Executable File

# Run a selection of common tests
import pytest
from src.move import *
from src.sinqMotor.limits import *
from src.sinqMotor.speed import *
from src.home import *
from src.sinqMotor.turboPmac.reset import reset
def test_reset(motor):
reset(motor, 5)
reset(motor)
@pytest.mark.stresstest
def test_reset_stress(motor):
for _ in range(50):
test_reset(motor)
def test_move_to_low_limit_switch(motor):
reset(motor)
move_to_low_limit_switch(motor)
def test_move_to_high_limit_switch(motor):
reset(motor)
move_to_high_limit_switch(motor)
def test_move_while_move_same_direction(motor):
reset(motor)
move_while_move(motor, -3000, -1000, 2)
def test_move_while_move_opposite_direction(motor):
reset(motor)
move_while_move(motor, 1000, -1000, 2)
def test_stop(motor):
reset(motor)
stop(motor, 3000)
def test_stop_then_move(motor):
reset(motor)
stop_then_move(motor, 100)
@pytest.mark.stresstest
def test_stop_then_move_stress(motor):
reset(motor)
for _ in range(50):
stop_then_move(motor, 100)
stop_then_move(motor, 0)
def test_speed_fields_valid(motor):
reset(motor)
speed_fields_valid(motor)
def test_set_minspeed_maxspeed_meanspeed(motor):
reset(motor)
set_minspeed_maxspeed_meanspeed(motor)
def test_set_invalid_speed_above_min_below_max(motor):
reset(motor)
set_invalid_speed_above_min_below_max(motor)
def test_set_speed_and_move(motor):
reset(motor)
set_speed_and_move(motor, motor.get_pv('maxspeed'), 10)
set_speed_and_move(motor, 0.5*motor.get_pv('maxspeed'), 0)
@pytest.mark.stresstest
def test_set_speed_and_move_stress(motor):
reset(motor)
for _ in range(50):
set_speed_and_move(motor, motor.get_pv('maxspeed'), 10)
set_speed_and_move(motor, 0.5*motor.get_pv('maxspeed'), 0)
def test_targets_outside_limits(motor):
reset(motor)
targets_outside_limits(motor)
def test_home(motor):
reset(motor, 1)
home(motor, True)
# def test_reread_limits_from_hw(motor):
# reread_limits_from_hw(motor)