def METHOD_NAME(self, test_object):
    """Test that setting with timeout=0 works,
    and that wait_ready raises an error afterwards
    Using full range of valid values"""
    if test_object.read_only:
        return
    limits = test_object.get_limits()
    if None in limits or limits[0] == limits[1]:
        limits = (0, 1)
    low, high = limits
    # Must be set first so the next command causes a change
    test_object.set_value(high, timeout=None)
    with pytest.raises(Exception):
        test_object.set_value(low, timeout=0)
        test_object.wait_ready(timeout=1.0e-6)